如何将DataFrame缺失值的行号与列名批量添加至errors字典
解决DataFrame空值单元格的错误信息收集问题
需求说明
需要将DataFrame指定必填列中所有空值(NaN)的单元格信息,以{'row': 行号, 'column': 列名, 'message': 'This is a required field'}的格式,逐个添加到名为errors的列表中,而非仅生成单条错误记录。
解决方案代码
import pandas as pd # 假设df是你的目标DataFrame req_cols = ['First Name*','Last Name*','Country*','Company*','Email Address*'] errors = [] # 遍历每个必填列,收集所有空值单元格的错误信息 for col in req_cols: # 获取当前列中空值对应的行索引 nan_row_indices = df[df[col].isna()].index # 为每个空值单元格生成错误条目 for idx in nan_row_indices: # 若行号需要从1开始(如对应表格显示行号),使用idx + 1;若直接用原索引则去掉+1 errors.append({ "row": idx + 1, "column": col, "message": "This is a required field" })
代码说明
- 遍历所有必填列,逐个排查空值
- 对每个列,提取所有空值所在的行索引
- 为每个空值单元格单独生成一条错误字典,确保所有空值信息都被记录
- 行号可根据实际需求调整:如果DataFrame的行索引是从0开始,而你需要显示从1开始的行号(类似Excel的行号),就用
idx + 1;若直接使用原索引则保留idx即可
内容的提问来源于stack exchange,提问作者user19788086
相关产品推荐
相关产品推荐

