[英]Create a new column which calculates the difference between last value and the first value of time column at groupby level in pandas
[英]create a column in a pandas dataframe which calculates the difference between two rows
我想创建一个名为df[column_name]
的新列,其中的结果是当前行与其上方的行之间的差异。
对于第一行,上面没有任何内容,因此更改为0。对于第二行,更改为2(26-24),依此类推。
dates | data | result
24-09 24 0
25-09 26 2
26-09 27 1
27-09 28 1
28-09 26 -2
您可以为此使用diff
方法,并与fillna
一起使用fillna
填充第一个NaN:
df['data'].diff().fillna(0)
例:
In [6]: df = pd.DataFrame({'data':[24,26,27,28,26]})
In [7]: df['result'] = df['data'].diff().fillna(0)
In [8]: df
Out[8]:
data result
0 24 0
1 26 2
2 27 1
3 28 1
4 26 -2
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.