Python 如何使用循环将一行除以前一行的内容
使用pandas数据帧,我想取第I行中的每一行,并将其除以第I-1行。我想使用矢量化(即,循环为否) e、 g.如果我有以下数据帧:Python 如何使用循环将一行除以前一行的内容,python,pandas,numpy,Python,Pandas,Numpy,使用pandas数据帧,我想取第I行中的每一行,并将其除以第I-1行。我想使用矢量化(即,循环为否) e、 g.如果我有以下数据帧: 1 10 2 20 8 160 32 480 我最终会: 1 10 2 2 4 8 4 3 注意:除法运算使用旧表值,而不是更新的值 另外,很抱歉格式不好 使用、div、shift和fillna: df.div(df.shift(1)).filln
1 10
2 20
8 160
32 480
我最终会:
1 10
2 2
4 8
4 3
注意:除法运算使用旧表值,而不是更新的值
另外,很抱歉格式不好 使用、
div
、shift
和fillna
:
df.div(df.shift(1)).fillna(df).astype(int)
输出:
A B
0 1 10
1 2 2
2 4 8
3 4 3
这是一个很好的表格格式化程序!非常有用-我相信我现在会经常使用它。谢谢。斯科特,这是一个非常聪明的答案。我以前从来没有梦想过这样的轮班操作。谢谢大家!@谢谢你。快乐编码!