我有一些扩展名为.snappy.parquet的文件,需要将其读取到Jupyter笔记本中,然后将其转换为pandas数据框。
import pyarrow.parquet as pq
filename = "part-00000-tid-2430471264870034304-5b82f32f-de64-40fb-86c0-fb7df2558985-1598426-1-c000.snappy.parquet"
df = pq.read_table(filename).to_pandas()```
The error is: ```ArrowNotImplementedError: lists with structs are not supported```
答案 0 :(得分:1)
自2019年11月30日起,Apache Arrow不支持List[Struct[..]]
类型的列(即列表和结构的混合嵌套)。如另一个答案中所述,相关问题是https://issues.apache.org/jira/browse/ARROW-1644。
要仍然读取此文件,可以通过向columns
提供pyarrow.parquet.read_table
参数来读取所有受支持类型的列。要找出哪些列具有复杂的嵌套类型,请使用pyarrow.parquet.ParquetFile(filename).schema
查看文件的架构。