我似乎无法通过pyarrow将包含timedelta的pandas数据帧写入镶木地板文件中。
pyarrow文档指定它可以处理Person
精度的numpy birthMonth
。但是,当我从numpy的// Note that no Person object is used when defining
int Person::*member_ptr = &Person::birthMonth;
// To use the pointer though, you need an object
int a_persons_birthdate = people[0].*member_ptr;
构建数据框时,该列的数据类型为timedeltas64
。
Pyarrow会因此而引发错误。
这是大熊猫还是pyarrow的虫子?有一个简单的解决方法吗?
以下代码:
ms
产生以下输出:timedelta64[ms]
和错误:
timedelta64[ns]
答案 0 :(得分:0)
fastparquet支持timedelta类型。
第一个install快速镶木地板,例如:
pip install fastparquet
然后您可以使用此:
df.to_parquet('test.parquet.gzip', engine='fastparquet', compression='gzip')