如何将 pandas 数据框转换为箭头数据集?

How to convert a pandas dataframe to a an arrow dataset?

在 huggingface 库中,有一种特殊格式的数据集,称为箭头数据集

https://arrow.apache.org/docs/python/dataset.html

https://huggingface.co/datasets/wiki_lingua

我必须将普通 pandas 数据帧转换为数据集或读取 tabluar csv 文件作为数据集。

这可能吗?

您可以创建 pyarrow.Table,然后将其转换为 Dataset。这是一个例子。

import pyarrow as pa
import pyarrow.dataset as ds
import pandas as pd
from datasets import Dataset

df = pd.DataFrame({'a': [0,1,2], 'b': [3,4,5]})
dataset = ds.dataset(pa.Table.from_pandas(df).to_batches())

### convert to Huggingface dataset
hg_dataset = Dataset(pa.Table.from_pandas(df))

要转换为 Table only,您可以使用 from_pandas(…) 方法,如文档和上面的示例所示。 https://arrow.apache.org/docs/python/pandas.html

对 Huggingface 文档的引用:https://huggingface.co/docs/datasets/package_reference/main_classes.html#dataset