pandas.DataFrame.to_orc
- DataFrame.to_orc(path=None, *, engine='pyarrow', index=None, engine_kwargs=None)[source]
-
Запись DataFrame в формате ORC.
Новое в версии 1.5.0.
- Параметры
-
- path:str, объект-подобный файлу или None, по умолчанию None
-
Если строка, она будет использоваться как путь к корневому каталогу при записи разбиеного набора данных. Под объектом-подобным файлу мы подразумеваем объекты с методом write(), например, дескриптор файла (например, с помощью встроенной функции open). Если path равен None, возвращается объект типа bytes.
- engine:str, по умолчанию ‘pyarrow’
-
Библиотека ORC для использования. Pyarrow должен быть >= 7.0.0.
- index:bool, необязательно
-
Если
True, включить индексы DataFrame в выходной файл. ЕслиFalse, они не будут записаны в файл. ЕслиNone, аналогичноinfer, индексы DataFrame будут сохранены. Однако вместо сохранения значений индекс RangeIndex будет сохранён как диапазон в метаданных, что требует меньше места и быстрее. Другие индексы будут включены в выходной файл как столбцы. - engine_kwargs:dict[str, Any] или None, по умолчанию None
-
Дополнительные ключевые аргументы, передаваемые в
pyarrow.orc.write_table().
- Возвращает
-
- bytes, если аргумент path не указан, иначе None
- Возбуждает
-
- NotImplementedError
-
Тип данных одного или нескольких столбцов — категориальный, беззнаковый целочисленный, интервальный, периодический или разреженный.
- ValueError
-
engine не равен pyarrow.
См. также
read_orc-
Чтение файла ORC.
DataFrame.to_parquet-
Запись файла parquet.
DataFrame.to_csv-
Запись файла csv.
DataFrame.to_sql-
Запись в таблицу SQL.
DataFrame.to_hdf-
Запись в hdf.
Примечания
Перед использованием этой функции следует прочитать руководство пользователя по ORC и инструкции по установке дополнительных зависимостей.
Для этой функции требуется библиотека pyarrow.
Поддерживаемые типы данных см. в поддерживаемых функциях ORC в Arrow.
В настоящее время часовые пояса в столбцах datetime не сохраняются при преобразовании DataFrame в файлы ORC.
Примеры
>>> df = pd.DataFrame(data={'col1': [1, 2], 'col2': [4, 3]}) >>> df.to_orc('df.orc') >>> pd.read_orc('df.orc') col1 col2 0 1 4 1 2 3Если вы хотите получить буфер с содержимым orc, вы можете записать его в io.BytesIO >>> import io >>> b = io.BytesIO(df.to_orc()) # doctest: +SKIP >>> b.seek(0) # doctest: +SKIP 0 >>> content = b.read() # doctest: +SKIP
© 2008–2022, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/1.5.0/reference/api/pandas.DataFrame.to_orc.html