pandas.read_parquet
- pandas.read_parquet(path, engine='auto', columns=None, storage_options=None, use_nullable_dtypes=<no_default>, dtype_backend=<no_default>, filesystem=None, filters=None, **kwargs)[source]
-
Загружает объект Parquet по указанному пути к файлу и возвращает DataFrame.
- Параметры:
-
- path:str, path object or file-like object
-
Строка, объект пути (реализующий
os.PathLike[str]) или файловоподобный объект, реализующий двоичную функциюread(). Строка может быть URL-адресом. Допустимые схемы URL включают http, ftp, s3, gs и file. Для URL-адресов file ожидается указание хоста. Локальный файл может иметь вид:file://localhost/path/to/table.parquet. URL-адрес file также может указывать на каталог, содержащий несколько секционированных файлов Parquet. И pyarrow, и fastparquet поддерживают пути к каталогам, а также URL-адреса file. Путь к каталогу может иметь вид:file://localhost/path/to/tablesилиs3://bucket/partition_dir. - engine:{‘auto’, ‘pyarrow’, ‘fastparquet’}, default ‘auto’
-
Библиотека Parquet, которую следует использовать. Если указано ‘auto’, используется параметр
io.parquet.engine. По умолчаниюio.parquet.engineсначала пытается использовать ‘pyarrow’, а если ‘pyarrow’ недоступен — ‘fastparquet’.При использовании движка
'pyarrow', если параметры хранилища не заданы, а файловая система реализована как вpyarrow.fs, так и вfsspec(например, “s3://”), сначала выполняется попытка использовать файловую системуpyarrow.fs. Чтобы использовать реализацию fsspec, укажите в аргументе filesystem экземпляр файловой системы fsspec. - columns:list, default=None
-
Если значение не None, из файла будут прочитаны только указанные столбцы.
- storage_options:dict, optional
-
Дополнительные параметры для конкретного подключения к хранилищу, например хост, порт, имя пользователя, пароль и т. д. Для URL-адресов HTTP(S) пары «ключ-значение» передаются в
urllib.request.Requestв качестве параметров заголовка. Для других URL-адресов (например, начинающихся с “s3://” или “gcs://”) пары «ключ-значение» передаются вfsspec.open. Дополнительные сведения см. вfsspecиurllib; дополнительные примеры параметров хранилища приведены здесь.Добавлено в версии 1.3.0.
- use_nullable_dtypes:bool, default False
-
Если значение True, для результирующего DataFrame используются типы данных, в которых
pd.NAслужит индикатором пропущенных значений. (Применимо только для движкаpyarrow.) По мере добавления новых типов данных с поддержкойpd.NAповедение этого параметра будет изменяться: в выходных данных будут использоваться такие типы. Примечание: этот параметр является экспериментальным, и его поведение (например, поддержка дополнительных типов данных) может измениться без предупреждения.Устарело начиная с версии 2.0.
- dtype_backend:{‘numpy_nullable’, ‘pyarrow’}, default ‘numpy_nullable’
-
Бэкендовый тип данных, применяемый к результирующему
DataFrame(пока что экспериментальный). Поведение описано ниже:"numpy_nullable": возвращаетDataFrameс типами данных nullable (по умолчанию)."pyarrow": возвращает DataFrame с типами данных nullable на основе pyarrowArrowDtype.
Добавлено в версии 2.0.
- filesystem:fsspec or pyarrow filesystem, default None
-
Объект файловой системы, используемый при чтении файла Parquet. Реализовано только для
engine="pyarrow".Добавлено в версии 2.1.0.
- filters:List[Tuple] or List[List[Tuple]], default None
-
Для фильтрации данных. Синтаксис фильтра: [[(column, op, val), …],…], где op принимает значения [==, =, >, >=, <, <=, !=, in, not in]. Вложенные кортежи объединяются в набор фильтров, применяемых с помощью операции AND. Внешний список объединяет эти наборы фильтров с помощью операции OR. Также можно использовать один список кортежей; в этом случае операция OR между наборами фильтров не выполняется.
Использование этого аргумента НЕ приведет к построчной фильтрации итоговых секций, если не указан также
engine="pyarrow". Для других движков фильтрация выполняется только на уровне секций, то есть для предотвращения загрузки некоторых групп строк и/или файлов.Добавлено в версии 2.1.0.
- **kwargs
-
Все дополнительные аргументы kwargs передаются движку.
- Возвращает:
-
- DataFrame
См. также
DataFrame.to_parquet-
Создает объект Parquet, сериализующий DataFrame.
Примеры
>>> original_df = pd.DataFrame( ... {"foo": range(5), "bar": range(5, 10)} ... ) >>> original_df foo bar 0 0 5 1 1 6 2 2 7 3 3 8 4 4 9 >>> df_parquet_bytes = original_df.to_parquet() >>> from io import BytesIO >>> restored_df = pd.read_parquet(BytesIO(df_parquet_bytes)) >>> restored_df foo bar 0 0 5 1 1 6 2 2 7 3 3 8 4 4 9 >>> restored_df.equals(original_df) True >>> restored_bar = pd.read_parquet(BytesIO(df_parquet_bytes), columns=["bar"]) >>> restored_bar bar 0 5 1 6 2 7 3 8 4 9 >>> restored_bar.equals(original_df[['bar']]) TrueФункция использует аргументы kwargs, которые напрямую передаются движку. В следующем примере мы используем аргумент filters движка pyarrow для фильтрации строк DataFrame.
Поскольку движок по умолчанию — pyarrow, аргумент engine можно опустить. Обратите внимание, что аргумент filters реализован в движке pyarrow, который может использовать многопоточность, а также потенциально эффективнее расходовать память.
>>> sel = [("foo", ">", 2)] >>> restored_part = pd.read_parquet(BytesIO(df_parquet_bytes), filters=sel) >>> restored_part foo bar 0 3 8 1 4 9
© 2008–2011, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
© 2011–2025, Open source contributors
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/2.3.0/reference/api/pandas.read_parquet.html