二、操作代码(续)
2、一次性平均数、中位数、众数插补(因字数原因无法放出完整版,需要的同仁可以私聊)
- #* writed by zhangxinyu from AHMU*#
- #* This r code is used to handle missing datad*#
- junshu=function(data){
- for (i in 1:ncol(data)) {
- data[is.na(data[,i]),i]=mean(data[,i],na.rm=T)
- }
- return(data)
- }
- zhongweishu=function(data){
- for (i in 1:ncol(data)) {
- data[is.na(data[,i]),i]=median(data[,i],na.rm=T)
- }
参数含义:
data: 传入的数据
id_junshu,id_zhongweishu,id_zhongshu:分别是要插补均数、中位数、众数所在的列(传入变量名或者变量所在的列号)
三、使用方法
运行以上所有代码:
1.我有一组数据,我想用均数插补第1,2列,中位数插补第4,5,众数插补第8,9列,那么应该这样写:
- data=m_impute(data,id_junshu=c(1,2),id_zhongweishu=c(4,5),id_zhongshu=c(8,9))
2.我有一组数据,我想用均数插补第1列,中位数插补第4,5列,众数插补第8,9列,那么应该这样写:
- data=m_impute(data,id_junshu=1,id_zhongweishu=c(4,5),id_zhongshu=c(8,9))
3.我有一组数据,我想用均数插补第1,2,3列,那么应该这样写:
- data=m_impute(data,id_junshu=c(1,2,3))
#数字换成变量名也是可以的,大家大胆往里面传,如果错误的话我写了校对模块。
如果你不会R也没事,我写了可视化操作工具,使用方法参考下一篇



雷达卡




京公网安备 11010802022788号







