繁体   English   中英

根据其他列在一列中填充 nan 值

[英]Fill nan values in one column based on other columns

我正在处理一个包含平均结婚年龄的数据集。 在这个数据集上,我正在做数据清理工作。 在执行此过程时,我遇到了一个功能,我必须在位置列中填写“NaN”值。 但是在位置列中有多个唯一值,我想在位置中填充 nan 值。 我需要一些关于如何在具有许多唯一值的列中填充这些 Nan 值的建议。

在此处输入图像描述

我已附上数据集以供参考, DataSet

我建议分 3 个步骤进行:

  1. 用最常见的位置或单独的值“未知”填充位置的缺失值;
  2. 用该特征按位置的平均值填充“age_of_marriage”的缺失值;
  3. 如果“age_of_marriage”还有任何缺失值,请用平均值填充它们。
df = pd.read_csv('https://raw.githubusercontent.com/atharva07/Age-of-marriage/main/age_of_marriage_data.csv', sep=',')
df['location'] = df['location'].fillna('Unknown')
df['age_of_marriage'] = df.groupby(['location'])['age_of_marriage'].apply(lambda x: x.fillna(x.median()))
df['age_of_marriage'] = df['age_of_marriage'].fillna(df['age_of_marriage'].mean())

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM