R:通过该变量的分布对数据框列中的值进行插补

R: imputation of values in a data frame column by distribution of that variable

我搜索了 Whosebug 和 google,但尚未找到合适的答案。

我有一个包含个人年龄的数据框列。 在大约 10000 个观测值中,有 150 个是 NA。 我不想用整列的平均年龄来估算那些人,而是根据我的数据集中的年龄分布分配随机年龄,即在这一列中。

我该怎么做?我尝试摆弄 MICE 包,但没有取得太大进展。

你有解决办法吗?

谢谢, corkinabottle

您可以简单地从您的观察中抽取 150 个值:

samplevals <- sample(obs, 150)

您还可以跨分位数对观察结果进行分层,以通过在每个分位数范围内进行采样来增加对尾部值进行采样的机会。