Проблема с функцией def - PullRequest
0 голосов
/ 13 июня 2018

Я пытаюсь создать экспоненциальную скользящую среднюю.Тем не менее, код ошибки «Серия» объект не вызывается »появился.Это мой кодМожет кто-нибудь помочь?

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)

1 Ответ

0 голосов
/ 13 июня 2018

Вы вызываете pandas.Series, который возвращается из метода mean.Это не имеет никакого смысла, и поскольку Series не реализует __call__, оно завершается с ошибкой.

То, что вы, вероятно, хотите сделать, это удалить парены и просто вернуть 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)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...