python 3 mac: snappy.compress AttributeError: module 'snappy' has no attribute 'compress'

python 3 mac: snappy.compress AttributeError: module 'snappy' has no attribute 'compress'

有没有人解决错误:消息:compressions['SNAPPY'] = snappy.compress AttributeError: module 'snappy' has no attribute 'compress' 在 python 阅读镶木地板时?顺便说一句,有没有办法读取整个目录?

我在 mac 上使用 python 3conda,根据 https://pypi.python.org/pypi/parquet

安装了 snappythrift

代码如下:

import parquet
import json
import fastparquet

with open(data_in_path + "file.parquet/part-01snappy.parquet", 'rb') as fo:
for row in parquet.DictReader(fo, columns=['id', 'title']):
    print(json.dumps(row))

 df2 = fastparquet.ParquetFile(path).to_pandas()

无法找到 snappy 解决方案,所以我用 snappy 读取 spark 中的数据,并在 [=] 中每次没有问题后用 gzip 将其写回17=] 被发现:

df.coalesce(1).write.option("overwrite","true").option("compression","gzip").parquet(dfWithGzip.parquet")

我遇到了同样的问题。

原因是我安装了错误的 python 包。您应该安装 python-snappy 而不是 snappy

就我而言 (os x),这是一个简单的两步过程:

brew install snappy
pip install python-snappy