在python中,我有一个GDP记录的数据框表,像这样
Quarter Vaule percentage
2017Q1-Q4 100 18%
2017Q1-Q3 60 20%
2017Q1-Q2 30 15%
2017Q1-Q1 10 10%
2016Q1-Q4 10 28%
2016Q1-Q3 6 50%
2016Q1-Q2 3 45%
2016Q1-Q1 1 20%
我想要这样的输出:
Quarter Vaule percentage
2017Q4 40 18%
2017Q3 30 20%
2017Q2 20 15%
2017Q1 10 10%
2016Q4 4 28%
2016Q3 3 50%
2016Q2 2 45%
2016Q1 1 20%
即,该值将基于其他记录的计算而更新,但百分比保持不变。
有没有有效的方法来处理这种情况。谢谢!
最佳答案
df.iloc[:-1, 1] = df['Vaule'].diff(-1)[:-1]
>>> df
Quarter Vaule percentage
0 2017Q1-Q4 40 18%
1 2017Q1-Q3 30 20%
2 2017Q1-Q2 20 15%
3 2017Q1-Q1 0 10%
4 2016Q1-Q4 4 28%
5 2016Q1-Q3 3 50%
6 2016Q1-Q2 2 45%
7 2016Q1-Q1 1 20%
关于python - 如何在同一数据框中使用特定条件基于另一条记录更新一条记录的值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46164378/