我正在尝试创建指数移动平均线。但是,错误代码'Series'对象不可调用'出现。这是我的代码。有人可以帮忙吗?
def CalculateEMA(window):
sma = Close.rolling(window, min_periods=window).mean()[:window]
rest = Close[window:]
EMA_window=pd.concat([sma, rest]).ewm(span=window, adjust=False).mean()
return EMA_window()
CalculateEMA(60)
答案 0 :(得分:0)
您正在调用从mean
方法返回的pandas.Series
。
这没有任何意义,因为Series
没有实现__call__
,它会因错误而失败。
你可能想要做的是删除parens并返回Series
本身。
def CalculateEMA(window):
sma = Close.rolling(window, min_periods=window).mean()[:window]
rest = Close[window:]
EMA_window=pd.concat([sma, rest]).ewm(span=window, adjust=False).mean()
return EMA_window # <-- changed here
CalculateEMA(60)