热线电话:13121318867

登录
2019-03-11 阅读量: 762
在ndarray列中查找两个pandas数据帧之间的交集

我有两个像这样的数据帧。列零是一个ndarray。我想找到交叉列0和1。

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

解决办法:应该能够通过使用numpy.array.all方法进行比较来制作一个布尔掩码:

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

0.0000
3
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子