def to_parquet(df, path, engine='<STR_LIT>', compression='<STR_LIT>', index=None,<EOL>partition_cols=None, **kwargs):
impl = get_engine(engine)<EOL>return impl.write(df, path, compression=compression, index=index,<EOL>partition_cols=partition_cols, **kwargs)<EOL>
Write a DataFrame to the parquet format.

Parameters
----------
path : str
    File path or Root Directory path. Will be used as Root Directory path
    while writing a partitioned dataset.

    .. versionchanged:: 0.24.0

engine : {'auto', 'pyarrow', 'fastparquet'}, default 'auto'
    Parquet library to use. If 'auto', then the option
    ``io.parquet.engine`` is used. The default ``io.parquet.engine``
    behavior is to try 'pyarrow', falling back to 'fastparquet' if
    'pyarrow' is unavailable.
compression : {'snappy', 'gzip', 'brotli', None}, default 'snappy'
    Name of the compression to use. Use ``None`` for no compression.
index : bool, default None
    If ``True``, include the dataframe's index(es) in the file output. If
    ``False``, they will not be written to the file. If ``None``, the
    engine's default behavior will be used.

    .. versionadded 0.24.0

partition_cols : list, optional, default None
    Column names by which to partition the dataset
    Columns are partitioned in the order they are given

    .. versionadded:: 0.24.0

kwargs
    Additional keyword arguments passed to the engine