python 使用 snappy 和 thiftpy 在 macOS 上安装 parquet 失败
python parquet install fails on macos with snappy and thiftpy
我对 python 比较陌生。我需要一种磁盘要求适中的快速 IO 格式。羽毛缺乏压缩力,所以它是镶木地板。我尝试安装
sudo pip3 install parquet
在 macOS 10.14.6、Python 3.7.4、pip 19.1.1 上。
第一组错误与 snappy 有关。它们可以用 brew install snappy
和 sudo pip3 install snappy
修复。 (问:pip3 不能自动找出并满足依赖关系,或者至少指导如何解决这个问题?)
但是,我运气不好:
...
clang -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/Tk.framework/Versions/8.5/Headers -I/usr/local/include -I/usr/local/opt/openssl/include -I/usr/local/opt/sqlite/include -I/usr/local/Cellar/python/3.7.4/Frameworks/Python.framework/Versions/3.7/include/python3.7m -c thriftpy/transport/cybase.c -o build/temp.macosx-10.14-x86_64-3.7/thriftpy/transport/cybase.o
thriftpy/transport/cybase.c:3127:24: error: no member named 'exc_type' in 'struct _ts'
tmp_type = tstate->exc_type;
~~~~~~ ^
thriftpy/transport/cybase.c:3128:25: error: no member named 'exc_value' in 'struct _ts'; did you mean 'curexc_value'?
tmp_value = tstate->exc_value;
^~~~~~~~~
curexc_value
...
何去何从?
parquet
软件包无人维护且已过时。要在 Python 中读写 Parquet 文件,您应该安装 pyarrow
并使用 pyarrow.parquet
模块。
安装 pyarrow
和 pandas
后,为了方便起见,您还可以将 pandas
的 Parquet 功能与 pandas.read_parquet
和 pandas.DataFrame.to_parquet
一起使用。
我对 python 比较陌生。我需要一种磁盘要求适中的快速 IO 格式。羽毛缺乏压缩力,所以它是镶木地板。我尝试安装
sudo pip3 install parquet
在 macOS 10.14.6、Python 3.7.4、pip 19.1.1 上。
第一组错误与 snappy 有关。它们可以用 brew install snappy
和 sudo pip3 install snappy
修复。 (问:pip3 不能自动找出并满足依赖关系,或者至少指导如何解决这个问题?)
但是,我运气不好:
...
clang -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include -I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/Tk.framework/Versions/8.5/Headers -I/usr/local/include -I/usr/local/opt/openssl/include -I/usr/local/opt/sqlite/include -I/usr/local/Cellar/python/3.7.4/Frameworks/Python.framework/Versions/3.7/include/python3.7m -c thriftpy/transport/cybase.c -o build/temp.macosx-10.14-x86_64-3.7/thriftpy/transport/cybase.o
thriftpy/transport/cybase.c:3127:24: error: no member named 'exc_type' in 'struct _ts'
tmp_type = tstate->exc_type;
~~~~~~ ^
thriftpy/transport/cybase.c:3128:25: error: no member named 'exc_value' in 'struct _ts'; did you mean 'curexc_value'?
tmp_value = tstate->exc_value;
^~~~~~~~~
curexc_value
...
何去何从?
parquet
软件包无人维护且已过时。要在 Python 中读写 Parquet 文件,您应该安装 pyarrow
并使用 pyarrow.parquet
模块。
安装 pyarrow
和 pandas
后,为了方便起见,您还可以将 pandas
的 Parquet 功能与 pandas.read_parquet
和 pandas.DataFrame.to_parquet
一起使用。