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

在pandas dataframe上使用str.contains[重复]

景哲
2023-03-14

此pandas python代码生成错误消息,

“TypeError:一元~:'float'的操作数类型错误”

我不知道为什么,因为我试图操纵一个str对象

df_Anomalous_Vendor_Reasons[~df_Anomalous_Vendor_Reasons['V'].str.contains("File*|registry*")] #sorts, leaving only cases where reason is NOT File or Registry

共有1个答案

白翔
2023-03-14

归功于上面的Davtho1983评论,为了清晰起见,我想我应该给评论添加颜色。

对于以后遇到同样错误的人来说(像我一样)。这是一个非常简单的修复。pandas的文档显示

Series.str.contains(pat, case=True, flags=0, na=nan, regex=True)

现在发生的情况是contains()方法没有应用于DataFrame中的na值,它们将保持为na值。您只需要用布尔值填充na值,这样就可以使用反向运算符~

df_Anomalous_Vendor_Reasons[~df_Anomalous_Vendor_Reasons['V'].str.contains("File*|registry*", na=False)]
 类似资料:
  • 我得到的错误要求没有定义。 我该怎么解决呢?我试图将带有colormap的js文件直接导入到html中(这样javascript文件就有了引用),但我找不到应该导入什么文件。

  • 问题内容: 我想查找包含字符串的行,如下所示: 但是,这失败了,因为某些元素是NaN: ValueError:无法使用包含NA / NaN值的向量建立索引 所以我诉诸于混乱 有没有更好的办法? 问题答案: 有一个标志: 参见文档: na:默认NaN,填充缺失值的值。 因此,您可以执行以下操作:

  • 问题内容: 假设我有一个带有 的DataFrame : 我需要做的是用上方的同一列中NaN的第一个非NaN值替换每个值。假设第一行永远不会包含NaN。因此,对于前面的示例,结果将是 我可以遍历整个DataFrame的逐列,逐元素并直接设置值,但是是否有一种简单的方法(最佳无循环方法)来实现这一点? 问题答案: 你可以在上使用该方法,并将该方法指定为ffill(正向填充): 这个方法 将上一个有效观

  • 我试图解决这项任务,但我失败了,因为返回不起作用。我是java新手,希望你能帮助我。 任务是删除字符串中的每个x,但不是第一个和最后一个。

  • 问题内容: 我试图显示是从网站上下载的图像,使用的和 在程序启动时,该映像不存在,已下载该映像,然后显示该映像,没有任何问题。但是,即使更改了,即使下载了该映像的较新版本,它也会显示旧的映像,就好像它已缓存了该映像或其他内容一样。 有人知道为什么会这样吗?有或没有这种方法,如何获得解决方法? 我还尝试执行以下操作以查看是否有帮助,但没有成功: 它什么也不会显示,然后再显示相同的旧图像。 问题答案:

  • 问题内容: 我想知道是否有一种更有效的方法来使用Pandas中的str.contains()函数来一次搜索两个部分字符串。我想在数据框中的给定列中搜索包含“ nt”或“ nv”的数据。现在,我的代码如下所示: 然后我将一个结果附加到另一个。我想做的是使用一行代码来搜索包含“ nt”或“ nv”或“ nf”的任何数据。我已经尝试了一些我认为应该可行的方法,包括仅在术语之间插入一条管道,但是所有这些都