如何在熊猫的时间序列数据中按行获取增加百分比?

问题描述

我有时间序列数据帧,我想在其中计算时间序列数据中每一列沿行的增加/减少百分比。为此,我可以尝试使用嵌套循环来迭代列和行,然后进行计算,但是它不能正常工作。谁能指出我要进行此调整的任何调整?有什么办法可以在熊猫身上做到这一点?

我的尝试

这是我的time series data in this gist

import pandas as pd

df = pd.read_csv("mydf.csv")

for col in range(0,len(df.columns)):
    for row1 in range(0,len(df)):
        for row2 in range(1,len(df)):
            numerator = df[row2][col] - df[row][col]
            denominator = df[row][col]
            perc_change = numerator/denomintor
            print(perc_change)

以上尝试均无效。我也这样尝试过:

for col in range(0,len(df.columns)):
     df.div(df[col],axis=0).applymap(lambda x: f'{x * 100:.2f}%')

我的第二次尝试也无法正常工作。谁能指出我的正确做法?有什么想法吗?

所需的输出

这只是输出示例,仅显示所需输出的结构。我想要的输出将是当前行的增加/减少百分比,而不是每列中的前一行。这是example output

我们如何才能正确地做到这一点?有什么想法在熊猫上做到这一点吗?谢谢!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)