嗨,我的数据格式如下:
A B
0 2 1
1 2 1
2 2 4
3 2 4
4 3 5
5 3 5
6 3 6
7 3 6
我想计算索引0和所有其他索引之间的绝对差之和。这意味着我将计算每列的差。取绝对值并对这些值求和。我想创建一列“ C”,看起来像这样:
A B C
0 2 1 0
1 2 1 0
2 2 4 3
3 2 4 3
4 3 5 5
5 3 5 5
6 3 6 6
7 3 6 6
例如,在索引7处,计算是通过以下方式完成的:
索引7 [C] = ABS(索引0 [A]-索引7 [A])+ ABS(索引0 [B]-索引7 [B])
6 = ABS(2-3)+ ABS(1-6)
答案 0 :(得分:3)
subtract
和.iloc
,然后sum
跨行的绝对值:
df['C'] = df.sub(df.iloc[0]).abs().sum(1)
A B C
0 2 1 0
1 2 1 0
2 2 4 3
3 2 4 3
4 3 5 5
5 3 5 5
6 3 6 6
7 3 6 6