【发布时间】:2016-05-06 05:45:28
【问题描述】:
我正在尝试计算 SPSS 文件中所有变量的每个 missing.value 的缺失值数量。我使用 memisc 包导入了文件。这是我的实际代码:
library(memisc)
#Takes about 70seconds
escc <- spss.system.file(file.choose(), to.lower=FALSE)
system.time({
esccMiss <- matrix(,length(escc),9)
esccMiss[,1] <- names(escc)
for (i in 1:length(escc)) {
x <- escc[i]
if(length(miss <- missing.values(x)) > 0) {
ifelse(length(miss@range)>0 , vals <- miss@range[1]:(miss@range[1]+3), vals <- miss@filter)
for (j in 1:length(vals)) {
esccMiss[i, 2*j] <- vals[j]
esccMiss[i,2*j+1] <- length(x[x == vals[j]])
}
}
}
})
我对 R 相当陌生(解释了我的代码的 C 结构),我意识到这真的很慢,但我很难找到使用 memisc 包中的 lapply 函数做同样事情的方法。
【问题讨论】:
标签: r