我有以下数据框:
一种。
k m n
0 x x x
1 x x x
2 x x x
3 x x x
4 x x x
5 x x x
6 x x x
7 x x x
8 x x x
9 x x x
B1。
l i j
1 x 46 x
2 x 64 x
3 x 83 x
9 x 70 x
B2。
l i j
0 x 23 x
4 x 34 x
6 x 54 x
8 x 32 x
B3。
l i j
0 x 11 x
5 x 98 x
7 x 94 x
9 x 80 x
如何将列“ i”(来自数据帧B1,B2和B3)添加到数据帧A?
关于重复值(例如B1和B3中的索引9和B2和B3中的索引0),我想保留最左边的值[B1, B2, B3]
(例如,索引0的索引为23,索引9的索引为70)。
所需的输出将是:
k m n i
0 x x x 23
1 x x x 46
2 x x x 64
3 x x x 83
4 x x x 34
5 x x x 98
6 x x x 54
7 x x x 94
8 x x x 32
9 x x x 70
您可以concat
使用Bx数据框,并duplicated
在索引上使用以删除重复的索引并保留第一个。
A['i'] = (pd.concat([B1, B2, B3])
.loc[lambda x: ~x.index.duplicated(keep='first'), 'i'])
print(A)
k m n i
0 x x x 23
1 x x x 46
2 x x x 64
3 x x x 83
4 x x x 34
5 x x x 98
6 x x x 54
7 x x x 94
8 x x x 32
9 x x x 70
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句