PYTHON:对数据帧索引切片的操作
PYTHON: operation on the dataframe index slice
我有一个包含日期时间索引和一些值的数据框:
Index
Value
2021-07-29 13:26:55.740529776
0.023001
2021-07-29 13:26:55.762375355
0.021846
2021-07-29 13:26:55.805379868
0.043005
2021-07-29 13:26:55.819379330
0.014000
2021-07-29 13:26:55.849494696
0.041983
...
...
我想要一个新列,其中包含特定时间段(索引切片)内的平均值,例如1秒。因为样本在时域上不均匀,我不能使用滚动window,它有固定数量的样本。
我尝试了循环但它不起作用:
for i in range(len(df)):
df['mean'][i] = df['value'][df.index[i] - datetime.timedelta(seconds = 1): df.index[i]].mean()
你能指导我如何以最pythonic的方式制作它吗?
贾雷克
pandas rolling 可以取一个间隔 window 例如
df['value'].rolling('1S').mean()
我有一个包含日期时间索引和一些值的数据框:
Index | Value |
---|---|
2021-07-29 13:26:55.740529776 | 0.023001 |
2021-07-29 13:26:55.762375355 | 0.021846 |
2021-07-29 13:26:55.805379868 | 0.043005 |
2021-07-29 13:26:55.819379330 | 0.014000 |
2021-07-29 13:26:55.849494696 | 0.041983 |
... | ... |
我想要一个新列,其中包含特定时间段(索引切片)内的平均值,例如1秒。因为样本在时域上不均匀,我不能使用滚动window,它有固定数量的样本。
我尝试了循环但它不起作用:
for i in range(len(df)):
df['mean'][i] = df['value'][df.index[i] - datetime.timedelta(seconds = 1): df.index[i]].mean()
你能指导我如何以最pythonic的方式制作它吗?
贾雷克
pandas rolling 可以取一个间隔 window 例如
df['value'].rolling('1S').mean()