Pyarrow 不安装 python 3.7(anaconda 5.3.0,windows x64 版本)

Pyarrow does not install with python 3.7 (anaconda 5.3.0, windows x64 version)

我通过安装 anaconda 5.3.0 安装了 python 3.7 的 64 位 windows 版本。然后我尝试安装 pyarrow ("conda install pyarrow")。

Anaconda 最终 降级 python 至 3.6。此后事情并没有那么顺利(奇怪的错误消息)。我最终不得不卸载 Anaconda 并重新安装它(必须卸载,因为如果程序文件夹不为空,它不会修复或重新安装)。

剩下我 python 3.7 但没有 pyarrow。是否有另一个软件包可以通过 python 和 pandas 为我提供镶木地板支持?或者有没有办法让 pyarrow 与 python 3.7 一起工作?

更新:根据 Omri374 的建议,我尝试了

pip install pyarrow

这并没有解决我单独的 anaconda 回滚到 python 3.6 的问题(即,当执行 "conda install pyarrow" 时),但它 确实 安装了 pyarrow。请注意,尽管它会提供以下输出——尝试更新 pip 会回滚到 python 3.6,因此我不推荐它:

twisted 18.7.0 requires PyHamcrest>=1.9.0, which is not installed.
Installing collected packages: pyarrow
Successfully installed pyarrow-0.11.0  
You are using pip version 10.0.1, however version 18.1 is available. 
You should consider upgrading via the 'python -m pip install --upgrade pip' command.

这是64位win anaconda 5.3.0(python3.7)自带的pip版本:

>conda list pip 
#Name Version Build Channel  
pip 10.0.1 py37_0

p.s。由于 pyarrow 似乎需要 conda-forge 频道,这是我的频道列表 ("conda config --show channels"): 频道:

  - conda-forge
  - anaconda-fusion
  - defaults  

最新的pyarrow包版本解决了这个问题。我现在可以在 python 3.7:

下使用 anaconda 安装 pyarrow
(base) C:\>conda install pyarrow
Solving environment: done

## Package Plan ##

  environment location: C:\Users\xxx
  added / updated specs:
    - pyarrow


The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    pyarrow-0.11.0             |   py37h33f27b4_0         1.5 MB
    libboost-1.67.0            |       hd9e427e_4        31.8 MB
    conda-4.5.11               |        py37_1000         654 KB  conda-forge
    gflags-2.2.1               |           vc14_0         283 KB  conda-forge
    lz4-c-1.8.3                |    he025d50_1000         254 KB  conda-forge
    xz-5.2.4                   |    h2fa13f4_1001         805 KB  conda-forge
    thrift-cpp-0.11.0          |           vc14_2         2.2 MB  conda-forge
    arrow-cpp-0.11.0           |   py37h8e05e8c_0         7.5 MB
    glog-0.3.5                 |       h6538335_1         130 KB
    zstd-1.3.3                 |           vc14_1         1.2 MB  conda-forge
    ------------------------------------------------------------
                                           Total:        46.2 MB

The following NEW packages will be INSTALLED:

    arrow-cpp:  0.11.0-py37h8e05e8c_0
    gflags:     2.2.1-vc14_0          conda-forge [vc14]
    glog:       0.3.5-h6538335_1
    libboost:   1.67.0-hd9e427e_4
    lz4-c:      1.8.3-he025d50_1000   conda-forge
    pyarrow:    0.11.0-py37h33f27b4_0
    thrift-cpp: 0.11.0-vc14_2         conda-forge [vc14]
    xz:         5.2.4-h2fa13f4_1001   conda-forge
    zstd:       1.3.3-vc14_1          conda-forge [vc14]

The following packages will be UPDATED:

    conda:      4.5.11-py37_0                     --> 4.5.11-py37_1000 conda-forge

进一步更新:我发现存在影响 conda-forge 通道和 python/anaconda 新版本的问题。 (或者可能有两个问题。)

目前似乎可以解决问题的是在频道列表中只有"defaults",而不是conda-forge。 ("conda config --show channels")(不过那可能只是因为"defaults"频道没有出问题的更新包。)

症状如下:

  1. 更新 anaconda 的尝试触发 python 到 3.6 的回滚:
The following packages will be DOWNGRADED: 

ipykernel:      4.10.0-py37_0             --> 4.9.0-py36_1
pyarrow:        0.11.1-py37h33f27b4_0     --> 0.8.0-py36_vc14_0       conda-forge [vc14]
python:         3.7.0-hea74fb7_0          --> 3.6.6-hea74fb7_0
  1. 更新尝试在 "automat" 包上给出了一个(无法纠正的)错误:
ERROR conda.core.link:_execute(502):
An error occurred while installing package 'conda-forge::automat-0.7.0-py_1'.
CondaError: Cannot link a source that does not exist.
C:\Users\xxx\anaconda3\Scripts\conda.exe 
Running conda clean --packages may resolve your problem. Attempting to roll back.

Rolling back transaction: Rolling back transaction: done 
CondaError: Cannot link a source that does not exist.
C:\Users\xxx\anaconda3\Scripts\conda.exe 
Running conda clean --packages may resolve your problem.