如何在 R 中找到 data.table 对象行中 NA 的百分比?
为了找到 R 中 data.table 对象每一行中 NA 的百分比,我们可以按照以下步骤操作:
首先,创建一个 data.table 对象。
然后,使用 rowSums 函数、ncol 函数以及 apply 函数来查找 data.table 对象每一行中 NA 的百分比。
示例
创建 data.table 对象
让我们创建一个 data.table 对象,如下所示:
library(data.table) x1<-sample(c(NA,1,2,5,7,3),25,replace=TRUE) x2<-sample(c(NA,1,2,5,7,3),25,replace=TRUE) x3<-sample(c(NA,1,2,5,7,3),25,replace=TRUE) x4<-sample(c(NA,1,2,5,7,3),25,replace=TRUE) DT<-data.table(x1,x2,x3,x4) DT
输出
执行上述脚本后,会生成以下输出(由于随机化,此输出会在您的系统上有所不同):
x1 x2 x3 x4 1: 3 1 5 5 2: 2 5 NA 1 3: NA 5 2 7 4: 2 2 3 3 5: 5 1 3 1 6: 1 NA NA NA 7: 7 1 5 5 8: 3 3 5 1 9: 5 3 7 3 10: NA 7 3 1 11: 1 3 7 3 12: NA 3 NA 2 13: NA 7 NA 2 14: 3 7 2 NA 15: 2 7 1 7 16: 5 3 7 3 17: 1 3 5 5 18: 1 3 1 1 19: 2 7 NA 1 20: 1 7 1 7 21: 1 1 3 5 22: 7 7 NA 2 23: NA 3 1 2 24: 3 NA 7 7 25: NA 7 NA 1 x1 x2 x3 x4
查找每一行中 NA 的百分比
使用 rowSums 函数、ncol 函数以及 apply 函数来查找 data.table 对象 DT 每一行中 NA 的百分比:
library(data.table) x1<-sample(c(NA,1,2,5,7,3),25,replace=TRUE) x2<-sample(c(NA,1,2,5,7,3),25,replace=TRUE) x3<-sample(c(NA,1,2,5,7,3),25,replace=TRUE) x4<-sample(c(NA,1,2,5,7,3),25,replace=TRUE) DT<-data.table(x1,x2,x3,x4) DT$NA_Percent<-rowSums(apply(is.na(DT),2,as.numeric))/ncol(DT) DT
输出
x1 x2 x3 x4 NA_Percent 1: 3 1 5 5 0.00 2: 2 5 NA 1 0.25 3: NA 5 2 7 0.25 4: 2 2 3 3 0.00 5: 5 1 3 1 0.00 6: 1 NA NA NA 0.75 7: 7 1 5 5 0.00 8: 3 3 5 1 0.00 9: 5 3 7 3 0.00 10: NA 7 3 1 0.25 11: 1 3 7 3 0.00 12: NA 3 NA 2 0.50 13: NA 7 NA 2 0.50 14: 3 7 2 NA 0.25 15: 2 7 1 7 0.00 16: 5 3 7 3 0.00 17: 1 3 5 5 0.00 18: 1 3 1 1 0.00 19: 2 7 NA 1 0.25 20: 1 7 1 7 0.00 21: 1 1 3 5 0.00 22: 7 7 NA 2 0.25 23: NA 3 1 2 0.25 24: 3 NA 7 7 0.25 25: NA 7 NA 1 0.50 x1 x2 x3 x4 NA_Percent
广告