为含NaN值的数据列分配1至DataFrame长度的索引值
给全NaN列分配从1开始的连续数值
先确认目标列是否全部为缺失值(可选验证步骤):
使用df['目标列名'].isna().all()判断,返回True则说明列中所有值都是NaN。分配连续数值的代码示例:
假设你的DataFrame名为df,目标列是id:# 验证列是否全为NaN(可选) if df['id'].isna().all(): # 生成从1到DataFrame行数的连续整数并赋值 df['id'] = range(1, len(df) + 1)若需要更高效的数值生成(适合大型DataFrame):
import numpy as np if df['id'].isna().all(): df['id'] = np.arange(1, len(df) + 1)
这段代码会直接将目标列的NaN替换为从1开始、与DataFrame行数一致的连续整数序列,每一行对应一个递增的数值。
内容的提问来源于stack exchange,提问作者Jeremy Wagerik
相关产品推荐
相关产品推荐

