2024-04-23 06:39:14 发布
网友
我有一个带有每日资产价格的数据框: Picture of head of Dataframe
我想创建一个具有弱平均资产价格的pandas系列(也可以是dataframe或其他一些数据结构中的附加列)。这意味着我需要计算列中每7个连续实例的平均值,并将其保存到一个系列中
Picture of how result should look like
由于我对python是一个完全的新手(就这一点而言,一般来说编程),我真的不知道如何开始
我非常感谢每一个提示
我认为需要^{}通过numpy数组的模来创建^{}对于通用解决方案,也可以使用所有索引(例如,使用DatetimeIndex):
DatetimeIndex
np.random.seed(2018) rng = pd.date_range('2018-04-19', periods=20) df = pd.DataFrame({'Date': rng[::-1], 'ClosingPrice': np.random.randint(4, size=20)}) #print (df) df['weekly'] = df['ClosingPrice'].groupby(np.arange(len(df)) // 7).transform('mean') print (df) ClosingPrice Date weekly 0 2 2018-05-08 1.142857 1 2 2018-05-07 1.142857 2 2 2018-05-06 1.142857 3 1 2018-05-05 1.142857 4 1 2018-05-04 1.142857 5 0 2018-05-03 1.142857 6 0 2018-05-02 1.142857 7 2 2018-05-01 2.285714 8 1 2018-04-30 2.285714 9 1 2018-04-29 2.285714 10 3 2018-04-28 2.285714 11 3 2018-04-27 2.285714 12 3 2018-04-26 2.285714 13 3 2018-04-25 2.285714 14 1 2018-04-24 1.666667 15 0 2018-04-23 1.666667 16 3 2018-04-22 1.666667 17 2 2018-04-21 1.666667 18 2 2018-04-20 1.666667 19 2 2018-04-19 1.666667
细节:
print (np.arange(len(df)) // 7) [0 0 0 0 0 0 0 1 1 1 1 1 1 1 2 2 2 2 2 2]
我认为需要^{} 通过numpy数组的模来创建^{} 对于通用解决方案,也可以使用所有索引(例如,使用
DatetimeIndex
):细节:
相关问题 更多 >
编程相关推荐