Dav*_*983 16 python arrays string excel pandas
这个pandas python代码生成错误消息,
"TypeError:一元〜:'浮动'的坏操作数类型"
我不知道为什么因为我试图操纵一个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
Run Code Online (Sandbox Code Playgroud)
有人有任何想法吗?
Jos*_*osh 35
相信上面的Davtho1983评论,我认为为了清晰起见,我会在评论中添加颜色.
对于任何后来因同样的错误而磕磕绊绊的人(像我一样).这是一个非常简单的修复.大熊猫的文档显示
Series.str.contains(pat, case=True, flags=0, na=nan, regex=True)
Run Code Online (Sandbox Code Playgroud)
发生的事情是contains()方法没有应用于DataFrame中的na值,它们将保持为na.您只需要使用布尔值填充na值,以便可以使用invert运算符~
.
上面的例子应该使用
df_Anomalous_Vendor_Reasons[~df_Anomalous_Vendor_Reasons['V'].str.contains("File*|registry*", na=False)]
Run Code Online (Sandbox Code Playgroud)
当然,应该根据预期的逻辑为na参数选择False或True.您选择用于填充na的布尔值将被反转.