gpt4 book ai didi

Python Pandas 使用 Fastparquet 将 CSV 转换为 Parquet

转载 作者:太空宇宙 更新时间:2023-11-03 21:16:44 26 4
gpt4 key购买 nike

我在 PyCharm venv 中使用 Python 3.6 解释器,并尝试将 CSV 转换为 Parquet。

import pandas as pd    
df = pd.read_csv('/parquet/drivers.csv')
df.to_parquet('output.parquet')

错误1 ImportError:无法找到可用的引擎;尝试使用:“pyarrow”、“fastparquet”。 parquet 支持需要 pyarrow 或 fastparquet

解决方案1安装fastparquet 0.2.1

错误2 文件“/Users/python parquet/venv/lib/python3.6/site-packages/fastparquet/compression.py”,第 131 行,在 compress_data 中 (算法,排序(压缩)))运行时错误:压缩“snappy”不可用。选项:['GZIP'、'未压缩']

我安装了python-snappy 0.5.3但仍然遇到相同的错误?我需要安装其他库吗?

如果我使用 PyArrow 0.12.0 引擎,则不会遇到此问题。

最佳答案

在 fastparquet 中,快速压缩是一项可选功能。

要快速检查从 csv 到 parquet 的转换,您可以执行以下脚本(仅需要 pandas 和 fastparquet):

import pandas as pd
from fastparquet import write, ParquetFile
df = pd.DataFrame({"col1": [1,2,3,4], "col2": ["a","b","c","d"]})
# df.head() # Test your initial value
df.to_csv("/tmp/test_csv", index=False)
df_csv = pd.read_csv("/tmp/test_csv")
df_csv.head() # Test your intermediate value
df_csv.to_parquet("/tmp/test_parquet", compression="GZIP")
df_parquet = ParquetFile("/tmp/test_parquet").to_pandas()
df_parquet.head() # Test your final value

但是,如果您需要使用快速压缩来写入或读取,您可以按照此 answer about installing snappy library on ubuntu 进行操作。 。

关于Python Pandas 使用 Fastparquet 将 CSV 转换为 Parquet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54642089/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com