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,它是通过选择
=1的所有行(不考虑标签,标签为0)构建的李>Fact
- 另一个是df,它是上面两个数据集的原始数据集
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)
)。但我认为在这种情况下,如上所述提取它们是正确的做法。