导入Pandas触发AttributeError:pyarrow模块无__version__属性
解决导入Pandas时的
AttributeError: module 'pyarrow' has no attribute '__version__'问题 问题背景
在Jupyter Notebook和VS Code的Anaconda环境中,导入numpy正常,但导入pandas时触发上述报错。已多次重装numpy和pandas,问题仍反复出现。
复现代码
import numpy as np import pandas as pd
报错信息
AttributeError Traceback (most recent call last) c:\Users\apodo\Downloads\Untitled.py in line 2 1 import numpy as np ----> 2 import pandas as pd File c:\Users\apodo\anaconda3\Lib\site-packages\pandas\__init__.py:36 32 del _hard_dependencies, _dependency, _missing_dependencies 34 try: 35 # numpy compat ---> 36 from pandas.compat import ( 37 is_numpy_dev as _is_numpy_dev, # pyright: ignore[reportUnusedImport] # noqa: F401,E501 38 ) 39 except ImportError as _err: # pragma: no cover 40 _module = _err.name File c:\Users\apodo\anaconda3\Lib\site-packages\pandas\compat\__init__.py:27 25 import pandas.compat.compressors 26 from pandas.compat.numpy import is_numpy_dev ---> 27 from pandas.compat.pyarrow import ( 28 pa_version_under7p0, 29 pa_version_under8p0, 30 pa_version_under9p0, 31 pa_version_under11p0, 32 pa_version_under13p0, ... ---> 10 _palv = Version(Version(pa.__version__).base_version) 11 pa_version_under7p0 = _palv < Version("7.0.0") 12 pa_version_under8p0 = _palv < Version("8.0.0") AttributeError: module 'pyarrow' has no attribute '__version__'
解决方案
报错根源是pyarrow模块损坏或版本与pandas不兼容,和numpy、pandas本身无关,按以下步骤修复:
- 彻底卸载pyarrow:
打开Anaconda Prompt或终端,执行:pip uninstall -y pyarrow conda remove -y pyarrow - 删除残留文件:
手动删除Anaconda环境下的pyarrow文件夹,路径示例:c:\Users\apodo\anaconda3\Lib\site-packages\pyarrow - 重新安装兼容版本:
先查看当前pandas版本,再安装匹配的pyarrow版本(比如pandas 2.x适配pyarrow 14.x-16.x):pip show pandas pip install pyarrow==15.0.0 - 验证:
重新运行导入代码,确认报错消失。
内容的提问来源于stack exchange,提问作者Alex
相关产品推荐
相关产品推荐

