【问题标题】:Python - module 'pyarrow' has no attribute 'Table' errorPython - 模块“pyarrow”没有属性“表”错误
【发布时间】:2019-07-25 15:09:05
【问题描述】:

我在 Conda 环境中使用 Python 并安装了 pyarrow: conda install pyarrow

然后尝试以下代码:

import pyarrow as pa
import pandas as pd
df = pd.DataFrame({"a": [1, 2, 3]})
# Convert from Pandas to Arrow
table = pa.Table.from_pandas(df)
# Convert back to Pandas
df_new = table.to_pandas()

得到错误:

AttributeError: module 'pyarrow' has no attribute 'Table'

我尝试重新创建一个新的 Conda 环境(通过关注 https://anaconda.org/conda-forge/pyarrow)并运行:

conda create -n pypq python=3.6 anaconda
source activate pypq
conda install -c conda-forge pyarrow 

遇到同样的错误: AttributeError: module 'pyarrow' has no attribute 'Table'

可能是什么问题?

【问题讨论】:

  • 请同时发布conda 命令输出的链接,以便我们了解发生了什么。

标签: python parquet pyarrow


【解决方案1】:

我认为你的 pyarrow 库没有成功安装。请尝试以下两个代码

conda uninstall pyarrow
conda install pyarrow

【讨论】:

  • 不要在 conda 环境中使用 pip,只使用 conda 来管理 conda 提供的依赖项。
  • 不是自己的环境吗?然后检查上面的代码
  • @HaseeAmarathunga - 更新的问题 - 尝试重新创建 Conda 环境,但仍然有同样的问题..
【解决方案2】:

您可能通过pipconda 安装了pyarrow,或者将其与其中一个一起安装并与另一个一起删除。在这种情况下,您最好的选择是重新创建 conda 环境。此外,在重新创建此环境时,请注意仅使用来自 defaults 通道或 conda-forge 通道的依赖项。将这两者混合也会导致问题,例如当同时安装包libboostboost-cpp 时,事情就会中断。

【讨论】:

  • 所以我应该创建一个新的 Conda 环境并使用 conda install -c conda-forge pyarrow 安装它?
  • 更新的问题 - 尝试重新创建 Conda 环境,但仍然有同样的问题..
  • 如我的回答中所述,请不要将 Anaconda 的默认频道与 defaults 混合使用。使用conda install pyarrow,因为您已经从defaults 创建了一个环境,或者使用conda create -n pypq python=3.6 pandas numpy -c conda-forge 创建了您的环境。
  • 试过conda deactivate; conda remove -n pypq --all; conda create -n pypq python=3.6 pandas numpy -c conda-forge; conda activate pypq; python pyarrow.py; 得到同样的错误:AttributeError: module 'pyarrow' has no attribute 'Table'
  • 另一个来源可能是您在基本 conda 安装中安装了 pyarrow。试试conda deactivate; conda uninstall pyarrow
猜你喜欢
  • 2020-09-13
  • 2021-10-22
  • 1970-01-01
  • 2014-07-23
  • 2019-07-09
  • 2018-11-26
  • 1970-01-01
  • 2022-06-16
  • 2017-04-24
相关资源
最近更新 更多