我希望在pandas dataframe中进行如下数据操作:
a = {'idx': range(8),
'col': [47,33,23,33,32,31,22,5],
}
df = pd.DataFrame(a)
print(df)
idx col
0 47
1 33
2 23
3 33
4 32
5 31
6 22
7 5
我想要的输出是:
idx col desired
0 47 14
1 33 10
2 23 -10
3 33 1
4 32 1
5 31 9
6 22 17
7 5 5
计算如下。
3条答案
按热度按时间cidc1ykv1#
IIUC,您需要反转
diff
和fillna
:输出:
ssm49v7z2#
kpbwa7wx3#
与使用
numpy
的@mozway相同的解决方案(更快):输出:
对于10 k条记录: