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

如何基于在“水果”列中发现的多个值删除所有行?

施飞昂
2023-03-14

我有一个简单的数据框架

Num   Fruit   Price
1     Apple   1.00
1     Apple   1.00
2     Apple   1.50
2     Orange  1.50
3     Orange  1.00
3     Banana  0.50

我想删除所有有水果的行AppleOrange

预期输出应如下所示:

Num  Fruit   Price
3    Banana  0.50

我试图执行以下语法,但不知何故,它没有删除数据框中的所有行

>>> df.drop(df.Fruit.isin(["Apple","Orange"]))
Fruit Num Price
2   Apple   2  1.50
3  Orange   2  1.50
4  Orange   3  1.00
5  Banana   3  0.50

有什么建议可以解决这个问题吗?

共有1个答案

訾俊名
2023-03-14

需要传递要删除的行的索引,但传递的是布尔数组。您可以将其更改为:

df.drop(df[df.Fruit.isin(["Apple", "Orange"])].index)
Out: 
   Num   Fruit  Price
5    3  Banana    0.5

或者,您可以选择不包含apple或orange的行:

df[~(df.Fruit.isin(["Apple", "Orange"]))]
Out: 
   Num   Fruit  Price
5    3  Banana    0.5
 类似资料:
  • 问题内容: 我有一个很大的数据集,我想删除包含值的列并返回一个新的数据框。我怎样才能做到这一点? 以下内容仅删除包含的单个列或行。 例如 在上述情况下,它将丢弃整个列,因为其值之一为空。 问题答案: 这是删除所有具有NULL值的所有列的一种可能的方法,以获取每列NULL值计数代码的源代码。 之前: 后: 希望这可以帮助!

  • 问题内容: 我使用以下方式列出了重复项: 现在,如何删除除一条消息以外的所有消息(我正在尝试删除重复项,以便可以在上应用唯一索引)。 问题答案: 使用和分配行号,以便删除重复对中除一个以外的所有行。

  • 我有一个像这样的数据框 我希望能够在冬季移除所有的行,所以看起来像这样

  • 函数非常适合统一数据帧。但是,要传递的关键字参数之一是或,而我希望删除列子集中所有重复的行。这有可能吗? 例如,我想删除与列和匹配的行,因此这应该删除行0和1。

  • 我有以下矩阵: 我只想删除id为3的行。请注意,当我使用时,它仍然保留,因为id本身是唯一的。

  • 问题内容: 我只是python的初学者,我想知道是否可以从列表中删除所有整数值?例如文件像 删除后,我希望文档如下所示: 问题答案: 要删除所有整数,请执行以下操作: 但是,您的示例列表实际上并不包含整数。它仅包含字符串,其中一些仅由数字组成。要过滤掉它们,请执行以下操作: 交替: