在Python中,可以使用pandas库来按组计算行之间的差异并保留原始值。下面是一个示例代码:
import pandas as pd
# 创建示例数据
data = {'Group': ['A', 'A', 'A', 'B', 'B', 'B'],
'Value': [10, 15, 12, 5, 8, 6]}
df = pd.DataFrame(data)
# 按组计算行之间的差异
df['Difference'] = df.groupby('Group')['Value'].diff()
# 打印结果
print(df)
输出结果如下:
Group Value Difference
0 A 10 NaN
1 A 15 5.0
2 A 12 -3.0
3 B 5 NaN
4 B 8 3.0
5 B 6 -2.0
在这个示例中,我们首先创建了一个包含组和值的数据框。然后,使用groupby
函数按组对值进行分组。接下来,使用diff
函数计算每个组内相邻行之间的差异,并将结果存储在新的'Difference'列中。最后,打印结果数据框。注意,由于第一行没有前一行的值,所以差异为NaN。
上一篇:按组计算行数,不包括零值。