Python 提取过滤数据帧

Python 提取过滤数据帧,python,pandas,numpy,Python,Pandas,Numpy,我有三个数据集: 一个是df1,通过选择label=1的所有行来构建 一个是df2,它是通过选择Fact=1的所有行(不考虑标签,标签为0)构建的 另一个是df,它是上面两个数据集的原始数据集 df1 User Label Fact Date 321 1 0 28-04 312 1 0 22-02 315 1 0 21-12 ... df2 User Label Fact Date 21 0 1 18-04 532 0

我有三个数据集:

  • 一个是df1,通过选择label=1的所有行来构建
  • 一个是df2,它是通过选择
    Fact
    =1的所有行(不考虑标签,标签为0)构建的
  • 另一个是df,它是上面两个数据集的原始数据集
df1

User Label Fact Date
321    1    0   28-04
312    1    0   22-02
315    1    0   21-12
...
df2

User Label Fact Date
21     0    1   18-04
532    0    1   02-01
135    0    1   22-12
...
df

User Label Fact Date
321    1    0   28-04
312    1    0   22-02
315    1    0   21-12
...
21     0    1   18-04
532    0    1   02-01
135    0    1   22-12
...
241    0    0   21-12
54     0    0   23-11
...
我想知道如何使用join“提取”具有
Label=0和Fact=0的数据集。
因为我对条件Label=0和Fact=0感兴趣,所以我可以使用一个逻辑条件来提取行,但我对可能的替代方案很好奇


谢谢

df[(df[“Label”]==0)和(df[“Fact”]==0)]
应该给你想要的,或者也可以
df2[df2[“Label”]==0]
。但是,您所说的可能的替代方案是什么意思?

请提供一份报告,以及预期的产出。我想知道如何使用join“提取”Label=0和value=0的数据集。为什么加入?对不起,这是事实,不是价值。我想考虑其他方法来提取行。<代码> df= df[(df[标签]=0)和(df [事实]=0)] /代码>我不确定是否还有更好的替代品。谢谢@罗伯特斯。是的,我和你一样提取行。对于“可能的备选方案”,我的意思是使用提取考虑一个数据集的行并减去(或仅仅计算差异)另一个数据集。我以为是加入,也许我错了。例如:要从原始数据集中获取剩余的行,我应该同时从df1和df2中删除行。这将给我与您相同的行您可以尝试
pd.merge(d1,d2,how=“inner”,left_index=True,right_index=True)
,假设每个“用户”ID在每个数据帧中只出现一次,并且它是索引(如果不是,请使用
d1.设置索引(“用户”,inplace=True)
)。但我认为在这种情况下,如上所述提取它们是正确的做法。