我有两个这样的数据帧,但是第零列是一个ndarray。我想找到相交的数据框。
a1 =
0 | 1
[39] | 6000000
[49] [50] [51] [52] | 84100
[49] | 95400
[20] | 65089
a2 =
0 | 1
[49] [50] [51] [52] | 84100
[38] [50] | 530400
[52] | 60611
[20] | 65089
预期输出:
a3 =
0 | 1
[49] [50] [51] [52] | 84100
[20] | 65089
任何想法都将不胜感激。
答案 0 :(得分:1)
通过使用numpy.array.all method进行比较,您应该可以制作一个布尔型掩码:
a1 = pd.DataFrame({'a':[[0], [0,1,2], [3], [4]],
'b':[0, 1000, 2000, 3000]})
a2 = pd.DataFrame({'a':[[0], [0,1,2], [4], [6]],
'b':[0, 1000, 88000, 6000]})
a3 = a1[(a1==a2).values.all(axis=1)]
返回:
a b
0 [0] 0
1 [0, 1, 2] 1000