R——factor()、gl() 構造因子

因子——表示名義型變量或有序變量。
名義變量一般表示類別,如性別,種族等等。
有序變量是有一定排序順序的變量,如職稱,年級等等。

使用factor()函數

f <- factor(x=charactor(), levels, labels=levels, exclude = NA, ordered = is.ordered(x), namax = NA)

其中:

x 爲創建因子的數據,是一個向量;

levels:因子數據的水平,默認是x中不重複的值;

labels:標識某水平的名稱,與水平一一對應,以方便識別,默認取levels的值;

exclude:從x中剔除的水平值,默認爲NA值;

ordered:邏輯值,因子水平是否有順序(編碼次序),若有取TRUE,否則取FALSE;

nmax:水平個數的限制。

在這裏插入圖片描述

gl()函數

gl(n, k, length = n*k, labels = 1:n, ordered = FALSE)

n: 正整數,表示因子的水平個數

k:正整數,表示每個水平重複的次數;

length: 正整數,表示因子向量的長度,默認爲n*k

labels: 表示因子水平的名稱,默認值爲1:n

ordered: 邏輯變量,表示因子水平是否是有次序的,默認值爲FALSE

在這裏插入圖片描述

因子的索引

fc3[fc3 > ‘Junior’] #對於有序因子可以使用>,>=,<,<=,!=,==
而非有序因子,只可以使用!=和==

注意:因爲因子一般表示名義變量或有序變量,如非有序因子,則使用>,>=,<,<=比較大小是沒有意義的。

在這裏插入圖片描述

因子的修改

在這裏插入圖片描述