首页 > 解决方案 > 包含完整性计数的按位运算时,pandas 数据帧中的语法错误

问题描述

我想为我的 pandas 数据框计算每一列的完整性,但出现语法错误:

record["CompleteCount"] = len((df_table1[df_table1[column]!= "") & (df_table1[column]).notnull()].loc[:,column])

""在错误发生的位置之后指向右括号,但是我在没有括号的情况下收到此错误并使用'and'而不是&

类型错误:无法将 dtyped [bool] 数组与 [bool] 类型的标量进行比较

我对完整性的定义是任何不为空且不为空的单元格。

使此代码工作的正确语法是什么?

标签: pythonpandasdataframe

解决方案


获取行的位置

 df.loc[(df_table1[column]!= "") & (df_table1[column]!=np.nan)]

或用 nan 替换空字符串

df_table1[column].replace('',np.nan)
df[df_table1[column].notnull()]

推荐阅读