在第一次尝试apacheparquet文件格式时遇到了这种类型的错误,这让人相当困惑。Parquet不应该像Pandas那样支持所有的数据类型吗?我错过了什么?在
import pandas
import pyarrow
import numpy
data = pandas.read_csv("data/BigData.csv", sep="|", encoding="iso-8859-1")
data_parquet = pyarrow.Table.from_pandas(data)
加薪:
^{pr2}$data.dtypes
是:
0 object
1 object
2 object
3 object
4 object
5 float64
6 float64
7 object
8 object
9 object
10 object
11 object
12 object
13 float64
14 object
15 float64
16 object
17 float64
...
我也遇到了同样的问题,我花了一段时间才想出一个方法来找到这个令人讨厌的专栏。这是我找到混合类型列的方法-尽管我知道肯定有一种更有效的方法。在
在异常发生之前打印的最后一列是混合类型列。在
另一次尝试-根据唯一值列出列和每种类型。在
^{pr2}$在apachearrow中,表列的数据类型必须相同。pandas支持Python对象列,其中的值可以是不同的类型。所以在写入拼花板格式之前,您需要进行一些数据清理。在
我们已经在Arrow Python绑定中处理了一些基本情况(比如在一列中同时处理字节和unicode),但是我们不会冒险猜测如何处理坏数据。我打开了JIRAhttps://issues.apache.org/jira/browse/ARROW-2098关于在这种情况下添加一个将意外值强制为null的选项,这在将来可能会有所帮助。在
相关问题 更多 >
编程相关推荐