基于多个条件从pandas数据帧中提取记录

时间:2018-03-22 17:32:50

标签: python pandas

我有像这样的pandas数据框

**First_name Last_name  Policy_number**
David        Gilbert    IOTA123455
Fredrick     Manuel     IOTA367522
Donald       Trump      IOTA337823
Cathy        Jackso     IOTA892352

我的python程序中有一个这样的变量:

some_value = "Trump"

“some_value”可以从上面的pandas数据帧的任何列中获取任何值。我的查询必须找到some_value所在的列,并返回记录。

比如说,如果some_value = "Trump",我的输出应为:

 **First_name Last_name Policy_number**
    Donald       Trump      IOTA337823

或者如果some_value = "IOTA123455",我的输出应为:

**First_name Last_name  Policy_number**
David        Gilbert    IOTA123455

为实现这一目标,我使用了以下代码:

df.loc[(df['First_Name'].isin(some_value)) | df['Last_Name'].isin(some_values)] | df['Policy_Number'].isin(some_values)]

然而我得到的错误是:

TypeError: only list-like objects are allowed to be passed to isin(), you passed a [str]

还有其他方法可以解决这个问题吗?请帮忙。

0 个答案:

没有答案