python数据帧中后续列之间的区别

时间:2019-09-20 15:18:14

标签: python pandas dataframe

在下面的数据框中,我想使用大熊猫从随后的几年中减去值以获得以下结果:

输入:

         2000 2001 2002 2003 2004
Michael   10   12   15   8    3
John      7    5    6    12   25  
Mitch     3    13   5    7    8
Jeff      1    0    11   6    9  
Ron       0    5    5    4    2 

输出

        2000  2001 2002 2003 2004
Michael        2    3    -7    -5
John          -2    1     6    13  
Mitch          10   -8    2    1

谢谢您的帮助

1 个答案:

答案 0 :(得分:0)

尝试一下。但是,正如@Quang Hoang在评论中所说的,与df.diff(axis=1)的关系要浪费很多。当我提出这个答案时,这并没有发生。

df.sub(df.shift(axis=1))

在这段代码中,我们基本上将所有列在axis = 1上(垂直)移了一步,并用实际值减去了。 df.diff(axis=1)是内置功能。<​​/ p>

输出

2000    2001    2002    2003    2004
Michael     NaN     2.0     3.0     -7.0    -5.0
John    NaN     -2.0    1.0     6.0     13.0
Mitch   NaN     10.0    -8.0    2.0     1.0
Jeff    NaN     -1.0    11.0    -5.0    3.0
Ron     NaN     5.0     0.0     -1.0    -2.0