包括按位进行完整性计数时,pandas数据框中的语法错误

时间:2018-07-26 13:46:24

标签: python pandas dataframe

我想在我的pandas数据帧的每一列中获取完整性计数,但是出现语法错误:

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

出现错误的地方是指向""之后的右括号,但是我得到的错误没有括号,而是使用'and'而不是&

  

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

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

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

2 个答案:

答案 0 :(得分:0)

如果您希望计数符合约束条件的元素,这应该可行:

((df_table1[column] != "") & (df_table1[column].notnull())).sum()

答案 1 :(得分:0)

获取行的位置

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

或用nan替换空字符串

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