Parquet似乎无法保存/读取包含元组的DataFrame。元组变成了列表。这是故意的还是错误?列表和指令按预期恢复。Pickle将按预期保存/读取元组。下面的示例保存了包含单个元组的 Dataframe 。当读回时,它是列表。
import pandas as pd
df = pd.DataFrame([[(0,1)]], columns=['tuple'])
print(df)
df.to_parquet('t')
df2 = pd.read_parquet('t', engine='pyarrow')
print(df2)
1条答案
按热度按时间5cnsuln71#
我使用 parquet 文件已经有一段时间了,但是由于某些原因,我没有带元组的df。
从此documentation开始,不支持元组作为parquet dtype。
根据我对document的理解,parquet文件中的元组被解析为列表。
我用下面的代码进行了测试(我想,这也是您所经历的):在下面的代码片段中保存df时,column1是一个元组
读取时,列1是一个列表