R:正确使用和应用
我想创建一个简单的代码来连接列,然后计算数据框中有多少个类别变量。我的问题是,当我使用R:正确使用和应用,r,R,我想创建一个简单的代码来连接列,然后计算数据框中有多少个类别变量。我的问题是,当我使用apply时,我得到了正确的结果,但有五次 例如: a <- c('car','bike',NA,'moto','skate') b <- c(NA,'car',NA,NA,'bike') c <- c('car',NA,NA,'skate',NA) d <- c('moto','skate',NA,'car',NA) data <- data.frame(a,b,c,d) 然
apply
时,我得到了正确的结果,但有五次
例如:
a <- c('car','bike',NA,'moto','skate')
b <- c(NA,'car',NA,NA,'bike')
c <- c('car',NA,NA,'skate',NA)
d <- c('moto','skate',NA,'car',NA)
data <- data.frame(a,b,c,d)
然后unlist
并使用table
计算我的数据中有多少分类变量:
one_column <- unlist(one_column)
table(one_column)
您创建的
x
向量比每列大5倍,因此它正在回收数据。你想要的是这个
x <- vector('list',length = NCOL(data))
x为什么不直接使用:table(unlist(data))
??因为我想练习apply
functionx它需要的是length=NCOL(data),而不是length=NROW(data),因为你在行上使用apply。谢谢,请注意
table(one_column)/5
x <- vector('list',length = NCOL(data))