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

有条件地放弃[重复]

顾嘉德
2023-03-14

我想从df1中删除某些行。我确实以这种方式编写了条件,并向我显示了要删除的确切行。但是,当我尝试对此数据应用drop时,它不起作用:

to_be deleted = df1.loc[df1['barcode'].str.contains('....-..-....-11.', regex=True)]

当我使用

to_be deleted.head()
print(len(to_be deleted))

我可以看到我要删除的数据,这意味着代码有效。然而,当我尝试删除这些行时,它不起作用

df2 = df1.drop([df1['barcode'].str.contains('....-..-....-11.', regex=True)], axis=1, inplace=True)

我也试过了

df2 = df1.drop(to_be_deleted, axis=1, inplace=True)

但它要么表明:

'Series' objects are mutable, thus they cannot be hashed

/anaconda3/lib/python3.6/site-packages/ipykernel_launcher.py:1: SettingWithCopyWarning:
A value is trying to be set on a copy of a slice from a DataFrame

如何删除在(待删除)数据框中指定的这些行?

非常感谢。

共有1个答案

东门茂实
2023-03-14

您不需要使用pd。DataFrame.drop

mask = df1['barcode'].str.contains('....-..-....-11.', regex=True)

df1 = df1[~mask]

~运算符表示否定。由于掩码是一个布尔数组,所以它被否定并在df1上用作行过滤器。

 类似资料:
  • 我试图根据从后端系统获得的值,有条件地将一个类赋给一个div。

  • 我有如下代码: 在我的属性文件中,我有: 这不起作用,parseFooBar在第一秒每分钟都被执行。 但是,如果我添加字段: 所以我可以做一个日志,看看它是什么,parseFooBar不会被执行。移除注入的字符串会再次看到parseFooBar执行。我做错了什么? 编辑:这是使用Spring 4.1.5,Spring Boot 1.2.1和JDK 8 编辑2:将注释移动到类型也有效。(无需强制使用

  • 问题内容: 我想基于从客户端传递的String参数注入一个bean。 我希望基于传递的参数注入报表实例。任何帮助将不胜感激。提前致谢 问题答案: 使用工厂方法模式: 当您使用以下命令调用控制器时,Spring可以创建报告类型: 但是,它非常笨拙,并且每次添加新报告类型时都需要进行修改。如果报告类型列表已修复,则可以。但是,如果您计划添加越来越多的类型,这将是一个更可靠的实现: 通过此实现,添加新的

  • 对于在其生命周期的某个点隐藏的组件,呈现它的最佳方式是什么?1)渲染组件,但不显示它(显示:无)。2)只在需要时渲染组件。什么对性能更好?如果组件的道具和状态稍后更新,是否最好让组件存在,但隐藏在虚拟DOM中? 或者这个:

  • 我有一个rxJava2可观察对象,我想有条件地订阅它。场景i将进行网络调用,并且只有当设备连接到网络时才会调用。我想做下面的事情 有什么建议吗?有没有更好的办法?

  • 问题内容: 我的问题的示例架构在SQLFiddle中给出,如下所示: 在在线游戏中,我想选择对手,该对手可以在玩家或中。 所需的示例输入/输出 也就是说,所需的数据可以在任何列中,但是我需要有条件地或以任何其他方式在单列中输出。我听说过MySQL条件列,但无法创建查询以获取所需的输出。有人可以帮助您进行必要的查询吗? 编辑 基于此链接,我运行以下查询,但失败。 问题答案: 我认为您可以使用以下语法