【发布时间】:2021-06-21 17:56:39
【问题描述】:
我正在编写一个脚本来计算具有特定值的单元格的百分比。但是,当它计算行数时,它不会计算出 NaN 的单元格。基本上我不希望脚本将值 NaN 的单元格计数为一行。我已经尝试了 != "" 的所有内容
给.isnan
我试图做的是计算具有特定值的单元格的百分比,如果函数计算具有 NaN 值的行,这是不可能的。
相关代码
df2 = pd.DataFrame(supplier_data_df, columns=['supplier keywords', 'supplier in ocr'])
total_suppliers = df2[(df2["supplier in ocr"] != "") & (df2["supplier keywords"] != "")]
percentilesupplierkeyword = len(supplier_filtered_df)/len(total_suppliers) * 100
print(percentilesupplierkeyword,"% of supplier-keywords have an issue")
提前谢谢你。
【问题讨论】:
-
您能否向我们展示您迄今为止尝试过的脚本示例,以及示例 DataFrame 和预期输出?
-
您可能想使用pd.notnull进行选择
-
@DerekO 当然。不幸的是,我无法提供整个脚本,但我会写相关部分。 ``` df2 = pd.DataFrame(supplier_data_df, columns=['supplier keywords', 'supplier in ocr']) total_suppliers = df2[(df2["supplier in ocr"] != "") & (df2["supplier关键字"] != "")] percentilesupplierkeyword = len(supplier_filtered_df)/len(total_suppliers) * 100 print(percentilesupplierkeyword,"% 的供应商关键字有问题") ```
-
@MrFuppes 谢谢,但我得到的输出是 total_suppliers 等于零,这导致除以零。不知道为什么它说它的值为零。