我有一个关于aaply
. 我想检查哪一列is.numeric
,但返回值aaply
有点出乎意料。下面是示例代码。为什么我得到"data.frame"
所有列(这解释了为什么即使is.numeric
是FALSE
带有数字向量的列)?
谢谢!
data=data.frame(str=rep("str",3),num=c(1:3))
is.numeric(data[,1])
# FALSE
is.numeric(data[,2])
# TRUE
aaply(data,2,is.numeric)
# FALSE FALSE
aaply(data,2,class)
# "data.frame" "data.frame"
编辑:在其他情况下,这会产生警告消息:
aaply(data,2,mean)
# 1: mean(<data.frame>) is deprecated.
# Use colMeans() or sapply(*, mean) instead.