如何在熊猫数据框中将一项与下一项进行比较?

时间:2020-05-10 07:15:45

标签: python-3.x pandas dataframe

我目前有一张桌子

            INDEX Open     
2018-12-31   0    104.000  
2019-01-02   1    105.000  
2019-01-03   2    111.000  
2019-01-04   3    110.000  

在每个项目的打开栏中,如何比较第一项和第二项?我目前有一个带计数器的循环,只要(计数器-1)大于0,就可以使用计数器-1将其与上一个项目进行比较,因此我不会得到索引超出范围的错误。我想比较这些项目,然后计算出它们与第二天的百分比差异,然后将结果作为新列添加到数据库中

结果应为

            INDEX     Open     %Change
2018-12-31 .....    0 .... 104.000 ....   Nothing because 1st item nothing to compare too 
2019-01-02 .....    1 .... 105.000 ....   .96 
2019-01-03 .....    2 .... 111.000 ....   5.71
2019-01-04 .....    3 .... 110.000 ....   -0.9

因此,我想将索引1与索引0进行比较,并计算出%的变化,以便在整个表中始终保持105/104-1 * 100。我确信有办法做到这一点,但我还没有弄清楚,任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

熊猫有一个功能可以做到这一点:

df.Open.pct_change()
#2018-12-31         NaN
#2019-01-02    0.009615
#2019-01-03    0.057143
#2019-01-04   -0.009009
相关问题