重新采样,百分比值

2024-06-02 10:14:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个带有日期时间索引的每月观测数据框架。我想转换成年度观察。问题是,我的数据框中的值是性能值(例如:每月股价变化百分比)。如何在正确聚合的同时重新采样到年度值?你知道吗

我需要的示例:

     m1  0.1     to      q1 0.331
     m2  0.1             q2 0.089
     m3  0.1
     m4 -0.1
     m5  0.1
     m6  0.1

每月到每季度重新采样,1.1^3-1=0.331,0.9*(1.1^2)-1=0.089


Tags: to数据框架示例时间性能m3百分比
2条回答

使用feliks的答案,如果您不想更改索引,可以在分组之前应用正则表达式:

regex_pattern = lambda s: (int(re.search(r'\d+', s).group())-1)//3
d1 = (df.val + 1).groupby(regex_pattern).prod() - 1

输出:

0    0.331
1    0.089
Name: val, dtype: float64

假设您的数据驻留在名为df的数据帧中,val列包含整数:

(df.val + 1).groupby(df.index // 3).prod() - 1

相关问题 更多 >