[英]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.