我正在尝试找出熊猫系列文章之间的区别。列数更改。输入和输出看起来像这样:

import pandas as pd
d={'A':[1,2,3,4],\
'B':[2,3,6,1],\
'C':([6,5,4,1]),\
'D':[1,2,3,4]}

pd.DataFrame(data=d)
   A  B  C  D
0  1  2  6  1
1  2  3  5  2
2  3  6  4  3
3  4  1  1  4




o={'B':[1,1,3,-3],\
   'C':[4,2,-2,0],\
   'D':[-5,-3,-1,3]}
pd.DataFrame(data=o)

   B  C  D
0  1  4 -5
1  1  2 -3
2  3 -2 -1
3 -3  0  3


有没有类似于Pandas cumsum的解决方案,或者我需要编写一系列循环吗?

最佳答案

您可以使用DataFrame.diff进行逐列比较:

df.diff(axis=1).iloc[:, 1:]

     B    C    D
0  1.0  4.0 -5.0
1  1.0  2.0 -3.0
2  3.0 -2.0 -1.0
3 -3.0  0.0  3.0




df.diff(axis=1).dropna(how='all', axis=1).astype(int)

   B  C  D
0  1  4 -5
1  1  2 -3
2  3 -2 -1
3 -3  0  3

关于python - 类似于cumsum的一系列列之间的差异,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56503710/

10-16 16:24