2016-07-05 124 views
1

是否有命令查看分類變量是如何編碼的?R類別變量值

例如,我有一個名爲HbA1c的變量,我看到的類別是< 5.7和> = 5.7。我想知道什麼值< 5.7和≥= 5.7(如果它是0或1或2)。我需要回歸分析。

對不起,如果這個問題已被解決,但我無法找到帖子。

預先感謝您。

回答

3

如果x因素(技術在R A分類變量名),然後levels(x)給你爲了水平,所以像

setNames(1:length(levels(f)),levels(f)) 
## a b c 
## 1 2 3 

會給你一個對應表。

您的評論的問題並不完全清楚,但如果你想運行具有從零開始數值的迴歸,我會嘗試這樣的:

mydata$n <- as.numeric(mydata$f)-1 

(與因素相關的數字代碼總是從1運行到N;這會給你一個從0到N-1運行的數字變量)。然後你可以運行迴歸是這樣的:

lm(y~n,data=mydata) 
+0

我用下面的命令:'名稱(1:長度(水平(DAT1 $ HbA1ckatnorm)),層次(DAT1 $ HbA1ckatnorm))',我也得到一個表它顯示的水平爲'1 2'。如果我現在想重新編碼這個變量,我使用'library car'中的'recode'函數。我的代碼看起來像'recode(dat1 $ HbA1ckatnorm,「'1'='0';'2'='1'」)'但我得到一個錯誤顯示'級別:<5.7 > = 5.7',當然,重新編碼功能不起作用。 –