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