我有两个长度相同的数据框

df1:
   density
1  1,45
2  3,87
3  4,35
4  2,87
5  0.74
6  9.34
7  3.087
8  0.28
9  6,47
10 5,59


第二个数据帧看起来像这样

df2:
  State
1  1
2  1
3  1
4  1
5  1
6  1
7  0
8  0
9  0
10 0


我想要一个看起来像这样的输出,这意味着过滤器df1,以便仅保留df2等于1的值:

output:
   density
1  1,45
2  3,87
3  4,35
4  2,87
5  0.74
6  9.34


我怎样才能做到这一点?
你能帮我吗。

最佳答案

让我们使用布尔值索引:

df1[df2.eq(1).values]


输出:

  density
1    1,45
2    3,87
3    4,35
4    2,87
5    0.74
6    9.34

关于python - Pandas -使用另一个数据框过滤数据框,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49804659/

10-11 20:13