-
因子提供了一個簡單並且緊湊的形式來處理分類(名義上的)數據。因子用”水平level”來表示所有可能的取值。如果數據集有取值個數固定的名字變量,因子就特別有用。
-
> g<-c("f","m","f","f","m")
> g
[1] "f" "m" "f" "f" "m"
> g<-factor(g)#因子化
> g
[1] f m f f m
Levels: f m#有幾種可選的值 -
若五個人全部是m,但是你需要兩個備選值,可以用如下語法
> other.g<-factor(c("m","m","m","m","m"),levels=c("f","m"))
> other.g
[1] m m m m m
Levels: f m
- 計算每個元素出現的次數,使用table()函數
> table(g)
g
f m
3 2
- table()函數還可以用於獲得多個因子的交叉表
> age<-factor(c('adult','adult','adult','adult','juvenile'))
> table(age,g)
g
age f m
adult 3 1
juvenile 0 1
- 計算表的邊際(margin)和頻率。
- 計算邊際
> t<-table(age,g)
> margin.table(t,1)#按照年齡查看邊際age
adult juvenile
4 1
> margin.table(t,2)
g
f m
3 2
- 計算頻率
> prop.table(t,1)#
g
age f m
adult 0.75 0.25
> prop.table(t)
#查看整個表的頻率
gage f m
adult 0.6 0.2
juvenile 0.0 0.2