Python pandas-删除一个数据框中不包含在另一个数据框中的所有元素

时间:2015-05-03 05:26:19

标签: python pandas dataframe

我正在使用pandas中的两个数据帧:

DF1:Product_ID,Num_Reviews

DF2:Product_ID,Reviewer_ID,Review_Score

我想删除或过滤DF2,只包含DF1中存在Product_ID的条目。我对大熊猫甚至python都不是很熟悉,也无法找到一种清晰的方法来检查数据帧是否包含一个密钥和过滤器。

谢谢!

1 个答案:

答案 0 :(得分:0)

计算Product_ID交集的最有效方法是使用numpy的in1d。那给你一个面具。

然后,您只需使用蒙版切片DF2即可获得所需的新数据帧。

import numpy as np
mask = ~np.in1d(DF2.Product_ID, DF1.Product_ID)
DF2 = DF2[mask]