mde包,超赞的数据缺失值探索与处理R包
缺失值是临床数据中最常遇到的问题之一,缺失值的处理有很多种方法,在处理缺失值前常需要了解缺失值的缺失情况,今天来学习一个新的R包——mde,意思是Missing Data Explorer,这个包专门用于缺失值的探索与处理。
1. 安装R包
安装包可以直接从CRAN上安装。
install.packages("mde")
library(mde)
2. R包介绍
这个包的函数不是特别多,如下图所示,每个函数的作用不同,函数很简单,有兴趣的可以看看每个函数的示例代码。

3. 函数演示
下面介绍几个常用的函数。
3.1 na_summary()函数
这个函数用来输出数据集中各种变量的数据缺失摘要,可以简单看下数据集的缺失情况。
# 查看airquality数据集的缺失情况
library(tidyverse)
airquality %>% na_summary()

如上图所示,输出了各变量的缺失数量、完整例数、缺失百分比等;
也可以使用代码可视化缺失值数据。
airquality %>%
na_summary() %>%
ggplot(aes(x=variable,y = percent_complete, fill = variable)) +
geom_col() +
theme_bw(base_size = 18)

3.2 recode_as_na()函数
这个函数的目的就是将数据集中某个值或者某些值转化为缺失值。
test2 <- data.frame(ID= c(1:5), Vals = c(2,3,4,5,5))
# 将数据集中所有的数字2转化为NA
recode_as_na(test2,value=c(2))
# 将数据集中所有的数字5转化为NA
recode_as_na(test2,value=c(5))

这种情况常可以用于当数据集中某些字符的批量替换。
上面是将所有的某些数字或字符转化NA,还可以使用参数来进一步提高替换功能。
可以使用subset_cols、pattern_type参数来限制指定某些列别的数字替换。
# 指定I开头的列
recode_as_na(test2,value=c(2),
pattern_type="starts_with",
pattern="I")
ID Vals
1 1 2
2 NA 3
3 3 4
4 4 5
5 5 5
这个函数的其他用法见帮助文档。
3.3 recode_as_na_for()
这个函数的作用是将数据集中符合某些条件或标准的列中的数值转换为NA。
# 将数据集中所有大于3的数字转化为NA
recode_as_na_for(test2,criteria = "gt", value = 3)
ID Vals
1 1 2
2 2 3
3 3 NA
4 NA NA
5 NA NA
criteria参数中gt是大于的意思,gteq是大于等于,lt是小于,lteq是小于等于,同样可以使用subset_cols来选择某些列。
好的,就学习到这里,有兴趣的朋友可以查看这个包的帮助文档,里面还有一些不错的函数。
参考资料
1.mde帮助文件
关注下方公众号,分享更多更好玩的R语言知识。
如果需要进群,请在菜单栏处添加作者微信,添加入群。
觉得有帮助的请点赞、分享、在看走起!
点个在看,SCI马上发表。
请关注“恒诺新知”微信公众号,感谢“R语言“,”数据那些事儿“,”老俊俊的生信笔记“,”冷🈚️思“,“珞珈R”,“生信星球”的支持!