我有以下数据框:A。 k m n0 x x x1 x x x2 x x x3 x x x4 x x x5 x x x6 x x x7 x x x8 x x x9 x x xB1。 l i j1 x 46 x2 x 64 x3 x 83 x9 x 70 xB2. l i j0 x 23 x4 x 34 x6 x 54 x8 x 32 xB3。 l i j0 x 11 x5 x 98 x7 x 94 x9 x 80 x如何将列“i”(来自数据框 B1、B2 和 B3)添加到数据框 A?关于重复值(例如,B1 和 B3 中的索引 9 以及 B2 和 B3 中的索引 0),我想保留最左边的值[B1, B2, B3](例如,索引 0 为 23,索引 9 为 70)。期望的输出是: k m n i0 x x x 231 x x x 462 x x x 643 x x x 834 x x x 345 x x x 986 x x x 547 x x x 948 x x x 329 x x x 70
1 回答
![?](http://img1.sycdn.imooc.com/545868b60001587202200220-100-100.jpg)
森林海
TA贡献2011条经验 获得超2个赞
您可以使用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
添加回答
举报
0/150
提交
取消