我有两个数据框:
df1: contains all information
rowname a b c d
R1 1 2 0 1
R2 2 2 0 1
R3 0 2 0 0
R4 1 2 0 1
df2: contains a subset of the rows and columns:
rowname a b c
R1 1 2 0
R2 2 2 0
R4 1 2 0
我想过滤掉不在
df2
中的所有行df1
。因此,对于这种情况,我希望在保留所有列的同时摆脱df1
中的R3。我认为使用
df1.merge(df2, ...)
可以成功实现这一目标,但是我尝试了各种参数,但均未成功。我正在使用python3。 最佳答案
使用isin()
简单过滤数据框
df1[df1.rowname.isin(df2.rowname)]
rowname a b c d
0 R1 1 2 0 1
1 R2 2 2 0 1
3 R4 1 2 0 1
关于python - python中的Pandas DataFrame:基于df2中的行从df1中删除行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49077885/