【问题标题】:Pyarrow does not install with python 3.7 (anaconda 5.3.0, windows x64 version)Pyarrow 不与 python 3.7 一起安装(anaconda 5.3.0,windows x64 版本)
【发布时间】:2019-03-17 02:13:22
【问题描述】:

我通过安装 anaconda 5.3.0 安装了 64 位 windows 版本的 python 3.7。然后我尝试安装 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(python 3.7)自带的pip版本:

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

附言由于 pyarrow 似乎需要 conda-forge 频道,这是我的频道列表 (“康达配置——显示频道”): 渠道:

  - conda-forge
  - anaconda-fusion
  - defaults  

【问题讨论】:

  • 你在 conda 环境中安装了 pyarrow 吗?我只是在 Windows 上的 python 3.7 conda env 上 pip 安装了 pyarrow,没有任何问题。
  • 这是我的主文件夹。 (我使用的是 conda,但只是默认的,没有专门创建的环境。)如果你还记得的话,你使用了什么命令来安装?您使用的是“conda-forge”还是“defaults”频道?谢谢。 (conda 将默认环境称为“base”)
  • 如果你 pip 安装它,你只需在 conda env (conda.io/docs/_downloads/conda-cheatsheet.pdf) 中运行pip install pyarrow。如果你 conda 安装它,你运行 conda install -c conda-forge pyarrow 它真的会将 python 降级到 3.6
  • 似乎有效,但是关于 pip 版本的奇怪警告,即使它是 python 3.7 pip:twisted 18.7.0 需要 PyHamcrest>=1.9.0,它没有安装。安装收集的包:pyarrow 成功安装 pyarrow-0.11.0 您使用的是 pip 版本 10.0.1,但是版本 18.1 可用。您应该考虑通过“python -m pip install --upgrade pip”命令进行升级。 >conda list pip # Name Version Build Channel pip 10.0.1 py37_0

标签: python pandas anaconda pyarrow


【解决方案1】:

最新的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。 (或者可能有两个问题。)

目前看来解决问题的是频道列表中只有“默认值”,而不是 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. 尝试更新会在“自动”包上出现(无法纠正的)错误:
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.

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-12-02
    • 2019-06-29
    • 1970-01-01
    • 2021-08-03
    • 2013-06-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多