Windows Anaconda环境Jupyter导入pandas遇pyarrow.__version__属性错误
pandas导入报错:AttributeError: module 'pyarrow' has no attribute 'version' 原因分析
在Windows系统的Anaconda环境中使用Jupyter Notebook时,此前导入pandas一直正常,突然出现导入报错,具体报错信息如下:
----> 3 import pandas as pd 4 import numpy as np 5 import matplotlib.pyplot as plt File C:\ProgramData\Anaconda3\lib\site-packages\pandas\__init__.py:22, in <module> 19 del hard_dependencies, dependency, missing_dependencies 21 # numpy compat ---> 22 from pandas.compat import is_numpy_dev as _is_numpy_dev 24 try: 25 from pandas._libs import hashtable as _hashtable, lib as _lib, tslib as _tslib File C:\ProgramData\Anaconda3\lib\site-packages\pandas\compat\__init__.py:20, in <module> 14 from pandas._typing import F 15 from pandas.compat.numpy import ( 16 is_numpy_dev, 17 np_version_under1p19, 18 np_version_under1p20, 19 ) ---> 20 from pandas.compat.pyarrow import ( 21 pa_version_under1p01, 22 pa_version_under2p0, 23 pa_version_under3p0, 24 pa_version_under4p0, 25 ) 27 PY39 = sys.version_info >= (3, 9) 28 PY310 = sys.version_info >= (3, 10) File C:\ProgramData\Anaconda3\lib\site-packages\pandas\compat\pyarrow.py:8, in <module> 5 try: 6 import pyarrow as pa ----> 8 _pa_version = pa.__version__ 9 _palv = Version(_pa_version) 10 pa_version_under1p01 = _palv < Version("1.0.1") AttributeError: module 'pyarrow' has no attribute '__version__'
导致该问题的常见原因如下:
- pyarrow模块损坏或不完整:可能因意外关机、磁盘读写错误、中途中断的包更新操作,导致pyarrow库的部分文件缺失或损坏,使得导入后无法读取
__version__属性。 - 版本兼容性问题:pandas对依赖的pyarrow有特定版本要求,若近期更新了pandas或pyarrow,可能出现两者版本不匹配,导致pandas无法正确识别pyarrow的版本信息。
- 环境冲突:Anaconda环境中存在多个pyarrow版本,或者当前工作目录下有同名的
pyarrow.py脚本文件,覆盖了官方的pyarrow模块,导致导入的并非完整的官方库。 - 权限限制:Windows系统中,Anaconda的
site-packages目录权限不足,导致pyarrow模块的部分文件无法正常读取,进而缺失__version__属性。
内容的提问来源于stack exchange,提问作者engin Cicek
相关产品推荐
相关产品推荐

