当前位置: 首页 > 知识库问答 >
问题:

如果数据框中的行包含列表中的值,如何删除这些行?[副本]

田英卓
2023-03-14

我有一个熊猫数据框,看起来像这样:

    Beer            Rating
0   Heineken        Good
1   Budweiser       Bad
2   Coors Light     Bad

下面是一个列表:

bad_beers = ["Light", "0.0%"]

如何删除熊猫数据帧中包含列表中给定字符串的每一行?

所需的输出应如下所示:

    Beer       Rating
0   Heineken   Good
1   Budweiser  Bad

共有1个答案

顾光明
2023-03-14

我们可以用str.contains

df[~df.Beer.str.contains('Light')]
Out[364]: 
        Beer Rating
0   Heineken   Good
1  Budweiser    Bad

如果列表包含更多使用|的项。

df[~df.Beer.str.contains('Light|Heineken')]
Out[365]: 
        Beer Rating
1  Budweiser    Bad
 类似资料:
  • 假设我有一张工作表--第一张--有5000多行(例如,每行“a”-“H”)。 在另一个工作表--第2号--中,我有一个“to-remove-list”--一个包含400个值的单列“a”,每个值包含字母数字字符串(例如:xxx1234)。 如果第'e'列包含“to-remove-list”(第2页的第'a'列)中的任何值,则必须删除第1页中的每一行。 删除整行,我的意思是删除该行并向上移动(不离开空

  • 我有如下数据帧。 输入 输出 这怎么能在python中完成

  • 我有一个名为“mydata”的数据框,看起来像这样: 我想删除第2、4、6行。例如,像这样:

  • 我有一个表格,上面有多个大陆的数据。现在我想删除每一行不是欧洲或非洲的大陆。与: 我每一排都是“欧洲”,但我想念“非洲”。有没有办法包含“或”-运算符?这对我不起作用。

  • 我有以下格式的CSV数据: 列属于数据类型。我想做的是删除所有具有非数字位置标签的行。因此,根据上表,我的期望输出为: 现在,我可以用以下方式硬编码解决方案: 这是受以下帖子的启发: 如何从特定列中包含特定字符串的数据框中删除行? 然而,我所寻找的是一个通用的解决方案,它将适用于上述任何类型的表。

  • 我有一个数据帧df: 然后我想删除列表中指示的具有某些序列号的行,假设这里是然后离开: 如何或什么功能可以做到这一点?