如果列 a == 值,则删除列 b 等于的行

发布于 2022-07-28 23:05:17

我试图在我的 df 中删除 SPCD == 104 的行,删除 Age >= 950 的行,由于某种原因,我终生无法弄清楚如何去做。

dropped_ages = d_age[ (d_age['SPCD'] == 104) & (d_age['Age'] >= 950) ]

这是我尝试过的一行代码,但它最终删除了 SPCD 104 的每个条目。我用 <= 和 >= 尝试过,结果相同。

所以最初的 df 可能看起来像:

    SPCD   Age
0   104    1100
1   104    300
2   104    950
3   133    200
4   104    400
5   133    100
6   104    1000

我想看到的是:

    SPCD   Age
0   104    300
1   104    950
2   133    200
3   104    400
4   133    100
关注者
0
被浏览
69
1 个回答
  • 面试哥
    面试哥 2022-07-28
    为面试而生,有面试问题,就找面试哥。

    否定你的条件:

    d_age[(d_age["SPCD"] != 104) | (d_age["Age"] < 950)]
    

    这输出:

       SPCD  Age
    1   104  300
    3   133  200
    4   104  400
    5   133  100
    


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看