使用字母数字列表中的 .loc 和 asin 过滤 DataFrame

Filter DataFrame using .loc and asin from an Alphanumeric List

我正在尝试使用包含字母数字值的列表来过滤数据框。下面是一个示例数据框:

A B
D0102 52
Patients 150
D5175 71
DaysWorked 12

我创建了一个名为“codes”的列表:

codes = ['D0102', 'D5175']

我使用的代码如下所示,数据框没有拉出任何东西:

new_df= df.loc[df['A'].isin(codes)]

我想要显示的所需输出数据帧是这样的:

A B
D0102 52
D5175 71

当我将名为“代码”的列表更改为:

codes = ['Patients', 'DaysWorked']

我使用了同一行代码:

new_df= df.loc[df['A'].isin(codes)]

新数据框拉取了正确的数据:

A B
Patients 150
DaysWorked 12

您的 dfA 列很有可能包含一些 unwanted whitespaces。你可能想这样做:

df.loc[df['A'].str.strip().isin(codes)]