我有两个像这样的长度相同的数据框
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
我该怎么做? 你能帮我吗。
答案 0 :(得分:5)
这应该有效
df1[df2.State.astype(bool)]
答案 1 :(得分:5)
让我们使用布尔索引:
df1[df2.eq(1).values]
输出:
density
1 1,45
2 3,87
3 4,35
4 2,87
5 0.74
6 9.34