pandas.DataFrame.to_orc #

数据框。to_orc (路径=, * ,引擎= 'pyarrow' ,索引=, engine_kwargs =) [来源] #

将 DataFrame 写入 ORC 格式。

1.5.0 版本中的新增内容。

参数
path str,类文件对象或 None,默认 None

如果是字符串,则在写入分区数据集时将用作根目录路径。通过类文件对象,我们引用具有 write() 方法的对象,例如文件句柄(例如通过内置 open 函数)。如果路径为 None,则返回字节对象。

引擎{'pyarrow'},默认 'pyarrow'

要使用的 ORC 库。

索引布尔值,可选

如果True,则在文件输出中包含数据帧的索引。如果False,它们将不会被写入文件。如果None,类似于infer数据帧的索引将被保存。但是,RangeIndex 将作为元数据中的范围存储,而不是保存为值,因此不需要太多空间并且速度更快。其他索引将作为列包含在文件输出中。

engine_kwargs dict[str, Any] 或 None,默认 None

传递给 的附加关键字参数pyarrow.orc.write_table()

返回
如果没有提供路径参数,则为字节,否则无
加薪
未实现错误

一列或多列的数据类型为类别、无符号整数、间隔、周期或稀疏。

值错误

引擎不是pyarrow。

也可以看看

read_orc

读取 ORC 文件。

DataFrame.to_parquet

编写镶木地板文件。

DataFrame.to_csv

写入 csv 文件。

DataFrame.to_sql

写入sql表。

DataFrame.to_hdf

写入hdf。

笔记

例子

>>> 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()