我想將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)'返回你感興趣的內容。 –