You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

计算股票时间序列移动平均时报'DataFrame object not callable'如何解决

错误原因
  • 触发TypeError: 'DataFrame' object is not callable的核心原因是取列语法错误:代码中使用圆括号()编写aapl('Close'),而DataFrame不是可调用对象,圆括号会被识别为调用操作,不符合pandas语法规范。
  • pandas取指定列的正确语法为方括号[],对应写法应为aapl['Close']。
  • 额外注意:直接对原DataFrame的切片结果aapl新增列,会触发SettingWithCopyWarning警告,建议筛选时调用.copy()生成独立的DataFrame再做修改。
修复方法

将报错行的圆括号替换为方括号,同时在筛选AAPL数据时新增copy()调用即可,修正后的对应代码如下:

# 筛选AAPL数据时加copy避免后续修改触发警告
aapl = dfflat[dfflat['Ticker'] == "AAPL"].copy()
windows = [10,20,30]
for period in windows:
    column_name = 'MA for %s in days' % str(period)
    # 圆括号替换为方括号取Close列
    aapl[column_name] = aapl['Close'].rolling(period).mean()
aapl.head()

内容的提问来源于stack exchange,提问作者Nripendra Mishra

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 21:06:04