Factor,因子
factor = factor(rep(c(1:3),times=5))
X=sample(100,15)
tapply(X,factor,mean)
把X这个向量,分别用1,2,3来标记,求每个1的平均数,每个2的平均数,每个3的平均数。
![](https://img.haomeiwen.com/i1696848/c4286bd0143bef7c.png)
X和fortor的长度要相等,例子中都是15个数,如果不能,则会报错。
![](https://img.haomeiwen.com/i1696848/0caf442d09bc5317.png)
手动求被标记成2的平均数
boo = rbind(X,factor)[2,] == 2
which(boo)
rbind(X,factor)[1,which(boo)]
sum(rbind(X,factor)[1,which(boo)])/length(which(boo))
![](https://img.haomeiwen.com/i1696848/ee05b446bc67dbb9.png)
网友评论