繁体   English   中英

Pandas:计算数据帧中所有行和特定行之间的差异

[英]Pandas: Calculate the difference between all rows and a specific row in the dataframe

嗨,我有以下格式的数据:

   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)

.iloc subtract然后对行之间的绝对值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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM