pandas.DataFrame.to_orc#
- DataFrame.to_orc(путь=None, *, движок='pyarrow', index=None, engine_kwargs=None)[источник]#
Запись DataFrame в формат ORC.
Добавлено в версии 1.5.0.
- Параметры:
- путьstr, файлоподобный объект или None, по умолчанию None
Если строка, она будет использоваться как путь к корневому каталогу при записи секционированного набора данных. Под файлоподобным объектом мы подразумеваем объекты с методом write(), такие как файловый дескриптор (например, через встроенную функцию open). Если path равен None, возвращается объект bytes.
- движок{‘pyarrow’}, по умолчанию ‘pyarrow’
Библиотека ORC для использования.
- indexbool, необязательно
Если
True, включить индексы датафрейма в вывод файла. ЕслиFalse, они не будут записаны в файл. ЕслиNone, аналогичноinferиндекс(ы) датафрейма будут сохранены. Однако вместо сохранения в виде значений RangeIndex будет храниться как диапазон в метаданных, поэтому он не занимает много места и работает быстрее. Другие индексы будут включены как столбцы в выходном файле.- engine_kwargsdict[str, Any] или None, по умолчанию None
Дополнительные ключевые аргументы, передаваемые в
pyarrow.orc.write_table().
- Возвращает:
- байты, если аргумент пути не предоставлен, иначе None
- Вызывает:
- NotImplementedError
Тип данных одного или нескольких столбцов — категория, беззнаковые целые числа, интервал, период или разреженный.
- ValueError
движок не 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 не сохраняются при преобразовании фрейма данных в файлы 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()) >>> b.seek(0) 0 >>> content = b.read()