我有一个包含 20,000 个观察值和 19 个变量的数据集。首先,我有一个性别列,它具有三个级别,即“M”、“F”和“U”,其中 U 可以视为未公开。每当性别列中有“U”时,其他两列即“年龄”和“任期”中就有一个 NA。这基本上可以解释为一个不准备透露他们的性别的人不准备透露他们的年龄和任期。我该如何处理这种情况?除了这三列之外,数据集中还有其他 16 列包含有意义的数据。在这种情况下,像 KNN 插补这样的正常插补技术会帮助我吗?
这是我已尽力使用的可重现示例:
x<-data.frame(gender=c('M','M','F','F','U','F','M','U'),age=c(21,24,20,34,NA,40,56,NA),tenure=c(7,4,5,3,NA,2,4,NA),job=c('Doctor','IT','Banking','Truck Driver','Finance','Agriculture','Electrician','Teacher'),country=c('Australia','America','New Zealand','Sweden','England','France','Denmark','Norway'))
数据框:
gender age tenure job country
1 M 21 7 Doctor Australia
2 M 24 4 IT America
3 F 20 5 Banking New Zealand
4 F 34 3 Truck Driver Sweden
5 U NA NA Finance England
6 F 40 2 Agriculture France
7 M 56 4 Electrician Denmark
8 U NA NA Teacher Norway
正如您从上面的示例中看到的,只要性别未定义,年龄和任期都存在缺失值,整个数据集中都是这种情况。处理这种情况的最佳方法是什么?这就是所谓的随机缺失数据,对吗?任何建议都会非常有帮助。非常感谢。