我想将R
的lapply
函数返回的信息修剪为第一个元素。处理来自R的lapply函数的输出/从列表中删除元素
所以,对于这样的事情
is(rnorm(10,10))
[1] "numeric" "vector" "atomicVector" "index" "number" ...
我想在刚刚结束只保留第1个要素"numeric"
完整的例子
x <- rnorm(10,10)
y <- sample(c("a","b","c"),10, replace = TRUE)
z <- factor(sample(c("a","b","c"),10, replace = TRUE))
dat.fake <- data.frame(x,y,z, stringsAsFactors = FALSE)
使用lapply得到数据帧中每列的信息
lapply(dat.fake,is)
我想只得到
$x
[1] "numeric"
$y
[1] "character"
$z
[1] "factor"
而不是
$x
[1] "numeric" "vector" "atomicVector" ...
$y
[1] "character" "vector" "data.frameRowLabels" ...
[6] "index"
$z
[1] "factor" "integer" "oldClass" "numeric" "vector"
全力输出的是有没有办法中lapply
做到这一点或类似的功能,或者什么是最有效的处理由lapply
返回的列表中的信息的方式?
在你可以使用'这个特定的情况下, lapply(dat.fake,class)'返回你感兴趣的内容。 –