R语言行、列求和处理NA问题
2022-10-25 本文已影响0人
Stat_lysis
MM<-data.frame(x1=c(NA,1,2,4,4,NA,NA),
x2=c(NA,NA,2,4,4,1,NA))
数据结构如下:
![](https://img.haomeiwen.com/i17082954/6705ae92644b2d8c.png)
对MM行求和,发现凡是有缺失值的地方均为缺失值,比如2、6行,但是我想保留其中的数字
![](https://img.haomeiwen.com/i17082954/c18d24623044aa31.png)
对命令进行na.rm=T进行处理,发现NA变成了0,也不满足要求,只能编辑函数进行处理
![](https://img.haomeiwen.com/i17082954/cdce74293ec0b04d.png)
col_sum=function(data){
t_data=data
for(i in 1:ncol(data)){
t_data[,i]=ifelse(is.na(data[,i]),0,1)
}
m=apply(data,1,sum,na.rm=T)
m=ifelse(apply(t_data,1,sum)==0,NA,m)
m
}
以下结果为所需要!!
![](https://img.haomeiwen.com/i17082954/1139f764412af96b.png)