【发布时间】:2023-04-08 10:12:01
【问题描述】:
我有一个时间序列,其 浮动索引 表示 实验开始后的分钟数。观察结果不是完全等距的。我正在做一个滚动平均。这里有一些示例数据:
S = pd.Series([0,3,2,6,4,7,7,9,11,13,12,12,11,9,6,7,3,5,4],
index=[0.01,0.13,0.2,0.29,0.4,0.5,0.59,0.68,0.79,0.9,1.0,1.1,1.19,1.29,1.4,1.5,1.6,1.71,1.8])
Sr = S.rolling(3, win_type='triang', center=True).mean()
在我的真实数据中,窗口跨越数百个数据点。因此,我希望它始终跨越同一时间(以索引单位),而不是固定数量的观察。我发现这在日期时间索引上是可能的,但是我需要索引是浮动的以便进一步计算。有什么方法可以做到这一点,而不必将索引转换为日期时间并再次转换回来?
伪函数:
Sr = S.rolling(0.3, win_type='triang', center=True, *on=index*).mean()
此示例的预期输出:
对于每个索引 i:从 i-0.15 到 i+0.15 的窗口均值(根据与 i 的距离进行三角加权)
【问题讨论】:
-
您能否提供上述示例的预期输出?
-
我编辑了问题,希望清楚吗?
-
我刚刚发现偏移窗口不适用于默认窗口类型以外的任何其他窗口:github.com/pandas-dev/pandas/issues/26980
标签: python pandas indexing floating-point rolling-computation