4 python apache python-2.7 pandas parquet
我正在尝试使用 python2.7 中的 pandas 和 pyarrow 将 csv 文件转换为镶木地板。
我在将 pa.Table.from_pandas(df) 转换中的字符串转换为字符串时遇到问题。它不断将数据类型转换为“二进制”,这让 AWS Glue 非常不满意。
我尝试过自定义架构,但它不起作用。
fields = []
for name, type in dtypes.items():
fields.append(pa.field(name, type))
my_schema = pa.schema(fields)
df = pd.read_csv(StringIO(file), delimiter="\t")
table = pa.Table.from_pandas(df)
Run Code Online (Sandbox Code Playgroud)
以前在读取 csv 时指定数据类型,这也不起作用。还尝试了replace_schema_metadata(),但这并没有多大作用,因为它不是实际的模式。
Python 2 的str类型实际上与 Parquet 的 BINARY 定义内容相同,因此所有带有str对象的列都将保存为binary. 在 Python 3 中,它们应该被正确加载为bytes. 要将列存储为UTF-8Parquet 中的字符串 /,您需要将列转换为unicode对象。
| 归档时间: |
|
| 查看次数: |
3931 次 |
| 最近记录: |