熊猫 EWM 标准偏差未计算

时间:2021-02-09 11:19:27

标签: python pandas std

我正在尝试计算 EWM 标准偏差,但结果返回 NaN。我可以计算相同 EWM 函数的平均值,所以我不确定为什么 std 不起作用。任何人都可以帮助解决这个问题吗? Python 版本 3.8.6,pandas 1.2.0。

import pandas as pd
from datetime import datetime

startDate = '2020-01-01'
endDate = '2020-12-31'

dates = pd.date_range(start=startDate, end=endDate)
dates = [date.strftime('%Y-%m-%d') for date in dates]

t1 = pd.DataFrame({'Date':dates,'Values': pd.Series(range(0,(len(dates))))})
t1['Date'] = pd.to_datetime(t1['Date'])

t1['Values_Mean'] =  t1['Values'].ewm(halflife='20 days', min_periods = 30, times=t1['Date']).mean()
t1['Values_Std'] = t1['Values'].ewm(halflife='20 days', min_periods = 30, times=t1['Date']).std()
t1.tail(10)
<头>
日期 价值观 Values_Mean Values_Std
2020-12-22 00:00:00 356 327.64472219695165
2020-12-23 00:00:00 357 328.64467481265206
2020-12-24 00:00:00 358 329.6446289031792
2020-12-25 00:00:00 359 330.64458442303777
2020-12-26 00:00:00 360 331.6445413281219
2020-12-27 00:00:00 361 332.64449957567086
2020-12-28 00:00:00 362 333.6444591242303
2020-12-29 00:00:00 363 334.6444199336124
2020-12-30 00:00:00 364 335.64438196485776
2020-12-31 00:00:00 365 336.64434518019766

任何帮助表示赞赏。 谢谢。

0 个答案:

没有答案