我想创建一个汇总行,以显示最后一行和第一行之间的差异。
例如
import pandas as pd
data = [
['A',1,5],
['B',2,4],
['C',3,3],
['D',4,2],
['E',5,1],
['F',6,0]
]
df = pd.DataFrame(data,columns=['name','x','y'])
print(df)
输出数据框应为:
: name x y
: 0 A 1 5
: 1 B 2 4
: 2 C 3 3
: 3 D 4 2
: 4 E 5 1
: 5 F 6 0
: 6 diff 5 -5
最好的办法是什么?
4条答案
按热度按时间hivapdat1#
从最后一行中减去第一行,
concat
沿沿着索引轴的差异wmomyfyw2#
通过在隐含值切片上使用
np.diff
:np.diff(df[['x', 'y']].values[[0, -1]].T)
的替代方案(默认情况下按列进行diff)是np.diff(df[['x', 'y']].values[[0, -1]], axis=0)
vyu0f0g13#
可以使用以下
输出量:
| | X| y| y |
| --|--|--|--|
| 0 |一| 1 | 5 |
| 1 |B| 2 | 4 |
| 2 |C| 3 | 3 |
| 3 |D| 4 | 2 |
| 4 |E| 5 | 1 |
| 5 |F| 6 | 0 |
| 6 |diff| 5 |-5|
mqkwyuun4#
试试看:
图纸: