【问题标题】:How do I use within / in operator in a Pandas DataFrame? [duplicate]如何在 Pandas DataFrame 中使用 within / in 运算符? [复制]
【发布时间】:2015-10-14 05:14:12
【问题描述】:

我想从我的 CSV 文件中选择数据。

虽然我可以在哪一列得到数据

"House" == 1 (any single number) 

如下,我不知道如何获取数据在哪里

"House" in [1, 2, 3, 4, 6, 7, 8, 9, 10, 13, 17, 18, 20, 21, 23, 26, 28, 30, 34, 46, 57, 58, 61, 86, 89, 102, 121, 156].
df = pd.read_csv('../../data/training_dataset_500.csv')
df[df['House']==1]

【问题讨论】:

  • 我试过 df[df['House']==[1, 2, 3, 4, 6, 7, 8, 9, 10, 13, 17, 18, 20, 21, 23 , 26, 28, 30, 34, 46, 57, 58, 61, 86, 89, 102, 121, 156]]
  • 我也试过 df[df['House']==1, 2, 3, 4, 6, 7, 8, 9, 10, 13, 17, 18, 20, 21, 23 , 26, 28, 30, 34, 46, 57, 58, 61, 86, 89, 102, 121, 156]
  • 对不起,我是初学者..
  • 问题是你从昨天开始就问了很多问题,而没有首先寻找答案。

标签: python pandas


【解决方案1】:

使用Series.isin() 方法检查序列值是否在值列表中。在你的情况下 -

df[df['House'].isin([1, 2, 3, 4, 6, 7, 8, 9, 10, 13, 17, 18, 20, 21, 23, 26, 28, 30, 34, 46, 57, 58, 61, 86, 89, 102, 121, 156])]

例子-

In [77]: df
Out[77]:
   A  B
0  1  5
1  2  6
2  3  7
3  4  8

In [78]: df[df['A'].isin([1,2])]
Out[78]:
   A  B
0  1  5
1  2  6

【讨论】:

    猜你喜欢
    • 2018-08-29
    • 2021-06-28
    • 2017-01-29
    • 1970-01-01
    • 2018-09-16
    • 2022-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-07-06
    相关资源
    最近更新 更多