如何解决pandas resample报错No module named 'pandas.core.resample'
问题背景
实操《Machine Learning for Financial Risk Management with Python Algorithms for Modeling Risk》(Abdullah Karasan著)第1章代码过程中,已完成两项前置操作:
- 成功从FRED接口拉取2010-2020年的能源产能利用率时间序列数据
- 参照书中示例代码完成数据去季节性处理
后续对能源序列执行重采样操作时触发报错,涉及代码与报错信息如下:
In [10]: from fredapi import Fred import statsmodels.api as sm In [11]: fred = Fred(api_key='insert you api key') In [12]: energy = fred.get_series("CAPUTLG2211A2S",observation_start="2010-01-01",observation_end="2020-12-31") In [20]: seasonal_index = energy.resample('Q').mean() # 报错信息 ModuleNotFoundError Traceback (most recent call last) <ipython-input-44-a3904e416c86> in <module> ----> 1 seasonal_index = energy.resample('Q').mean() 2 seasonal_index D:\anaconda\lib\site-packages\pandas\core\generic.py in resample(self, rule, how, axis, fill_method, closed, label, convention, kind, loffset, limit, base, on, level) ModuleNotFoundError: No module named 'pandas.core.resample'
报错原因
该报错和代码逻辑本身无关,核心诱因是本地Anaconda环境中的pandas包存在安装损坏或版本兼容问题:
- resample是pandas内置的时间序列重采样方法,正常完整安装的pandas不会缺失
pandas.core.resample模块 - 常见触发场景包括Anaconda初始安装时组件不全、后续跨源混用pip/conda更新包导致依赖冲突、pandas版本过旧和当前Python/依赖包适配失效
解决方法
按以下步骤操作即可修复:
- 打开Anaconda Prompt,彻底卸载当前环境中的pandas,依次执行两条命令避免残留:
pip uninstall -y pandasconda remove -y pandas - 安装适配书中代码的稳定版pandas,优先用conda安装规避依赖冲突:
conda install pandas=1.5.3 -y
选择1.5.3版本的原因:该版本是pandas 1.x系列的最终稳定版,完全兼容书中使用的旧版API(包括旧版resample参数、季度频率标识'Q'),不会出现高版本pandas API变更导致的额外报错
- 安装完成后重启Jupyter Notebook的运行内核,从头重新运行导入库、拉取数据的代码,再执行重采样语句即可正常输出结果。
内容的提问来源于stack exchange,提问作者69hl
相关产品推荐
相关产品推荐

