Lecture 06

Factors

> # FACTOR
> factor = factor(rep(c(1:3),times=5))
> factor
 [1] 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3
Levels: 1 2 3

> X = sample(100,15)
> tapply(X,factor,mean)
   1    2    3 
67.6 52.2 56.8 

> rbind(X,factor)      # X用factor来标记
       [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8]
X        97   87   93   34   16   67   48   43
factor    1    2    3    1    2    3    1    2
       [,9] [,10] [,11] [,12] [,13] [,14] [,15]
X        25    77    21    60    82    94    39
factor    3     1     2     3     1     2     3

> boo = rbind(X,factor)[2,]==1      # 判断语句
> rbind(X,factor)[2,]==1
 [1]  TRUE FALSE FALSE  TRUE FALSE FALSE  TRUE
 [8] FALSE FALSE  TRUE FALSE FALSE  TRUE FALSE
[15] FALSE> rbind(X,factor)[2,]==1
 [1]  TRUE FALSE FALSE  TRUE FALSE FALSE  TRUE
 [8] FALSE FALSE  TRUE FALSE FALSE  TRUE FALSE
[15] FALSE

> which(boo)      # Ture
[1]  1  4  7 10 13

> rbind(X,factor)[1,which(boo)]
[1] 97 34 48 77 82

> sum(rbind(X,factor)[1,which(boo)])/length(which(boo))      
[1] 67.6

你可能感兴趣的:(Lecture 06)