【发布时间】:2019-08-29 08:47:20
【问题描述】:
我正在处理股票数据,我正在尝试获取过去 15 分钟内“最后”值的最大值(最大值)。这显示在名为 Max 的列中的预期输出中。
我尝试的代码需要很长时间才能计算出来,我确信缺少一些东西。不知道该怎么做,因为我是熊猫时间序列计算的新手。谁能给你的解决方案。谢谢
代码尝试:
for c in df["Last"].dropna():
df[c]=df["Last"].fillna(0).rolling('15T').max()
new="Prev15max_min"+df["Last"].dropna()
df.loc[:df.index[0]+pd.DateOffset(minutes=15),new]=np.nan
我的数据如下所示
Timestamp Last
1/20/19 12:15 3071.56
1/20/19 12:17 3097.82
1/20/19 12:17 3097.82
1/20/19 12:18 3095.25
1/20/19 12:19 3087.42
1/20/19 12:20 3095.29
1/20/19 12:21 3095.25
1/20/19 12:22 3093.11
1/20/19 12:23 3103
1/20/19 12:24 3095
1/20/19 12:25 3100.6
1/20/19 12:26 3099.84
1/20/19 12:27 3098.77
1/20/19 12:29 3097.24
1/20/19 12:29 3090
1/20/19 12:30 3090
1/20/19 12:31 3094.2
预期输出
Timestamp Last Max
1/20/19 12:15 3071.56
1/20/19 12:17 3097.82
1/20/19 12:17 3097.82
1/20/19 12:18 3095.25
1/20/19 12:19 3087.42
1/20/19 12:20 3095.29
1/20/19 12:21 3095.25
1/20/19 12:22 3093.11
1/20/19 12:23 3103
1/20/19 12:24 3095
1/20/19 12:25 3100.6
1/20/19 12:26 3099.84
1/20/19 12:27 3098.77
1/20/19 12:29 3097.24
1/20/19 12:29 3090 3103
1/20/19 12:30 3090 3103
1/20/19 12:31 3094.29 3103
【问题讨论】:
标签: python pandas time-series