Python 基于列条件的数据帧过滤

Python 基于列条件的数据帧过滤,python,pandas,numpy,Python,Pandas,Numpy,我试图从一列中满足特定条件的数据帧中删除所有行 假设我的数据帧是这样的: index 'Value 1' 'Grade' 1 10 2170A 2 15 2170B 3 10 NCR2170B 4 20 NCR2170A 5 30 NCR2170B 我希望过滤后的输出如下 index 'Value 1' 'Grade

我试图从一列中满足特定条件的数据帧中删除所有行

假设我的数据帧是这样的:

index  'Value 1'   'Grade'
1         10         2170A
2         15         2170B
3         10         NCR2170B
4         20         NCR2170A
5         30         NCR2170B
我希望过滤后的输出如下

    index  'Value 1'   'Grade'
2         15         2170B
3         10         NCR2170B
5         30         NCR2170B
我尝试了许多不同的方法来使用列表理解,循环每一行并进行评估。当我按照以下思路使用某些东西时,我可以使其工作:

data_filtered = data[data['Grade'] == '2170B']
但这显然遗漏了NCR2170B之类的条目

每当我尝试以下方法时:

data_filtered = data['2170B' in data['Grade']]
我得到一个关键错误:“True”

我觉得我错过了一些非常明显的东西

我也尝试过使用np.where,但它只输出一个空数组。

您可以使用它来检查字符串列是否包含子字符串:

df[df.Grade.str.contains('2170B')]

#index  Value 1    Grade
#1  2        15    2170B
#2  3        10 NCR2170B
#4  5        30 NCR2170B

非常感谢你,我知道这很简单,我不知道。对不起,我是python新手。