我希望這個問題不是題目。 我知道如何在R中編寫一個虛擬變量,但是,我想知道是否可以在Excel中創建它。比方說,我有一個顏色變量下的3種顏色(紅色,藍色,黃色)列表。 R會將其作爲3個級別的因素導入。Excel虛擬變量R
現在,如果我想在Excel中做到這一點,我可以做出3個新的預測變量(而不是顏色,現在變成紅色,藍色和黃色),如果它是紅色,則置1紅色,否則爲0上?或者R會繼續將其解釋爲3個獨立因素,每個因素有2個等級?
我希望這個問題不是題目。 我知道如何在R中編寫一個虛擬變量,但是,我想知道是否可以在Excel中創建它。比方說,我有一個顏色變量下的3種顏色(紅色,藍色,黃色)列表。 R會將其作爲3個級別的因素導入。Excel虛擬變量R
現在,如果我想在Excel中做到這一點,我可以做出3個新的預測變量(而不是顏色,現在變成紅色,藍色和黃色),如果它是紅色,則置1紅色,否則爲0上?或者R會繼續將其解釋爲3個獨立因素,每個因素有2個等級?
因此,您在Excel中手動創建三個虛擬列,並且想要將它們導入到R中?如果您稍後將這些列導入爲數字而不是因子,則不會有任何問題。
那麼,我還是要提醒你R可以通過model.matrix()
將因子編碼爲虛擬變量。所以從來沒有必要自己做這件事。在excel中使用帶有「紅色」,「藍色」和「黃色」的單個列是絕對可以的,並將其導出到R中作爲因子。
colour <- gl(3,2,labels=c("red","blue","yellow"))
model.matrix(~ colour - 1)
# colourred colourblue colouryellow
#1 1 0 0
#2 1 0 0
#3 0 1 0
#4 0 1 0
#5 0 0 1
#6 0 0 1
又一個快速的問題。使用因子顏色和其他因子變量使用
model.matrix
- 我怎樣才能將其納入我的模型?當我調用線性模型(例如)lm(response ~ predictor.1 + predictor.2 + colour)
時,它會自動調用虛擬變量還是需要將model.matrix分配給矢量?
model.matrix
是一個服務例程,用於模型擬合例程像lm
,glm
等。用戶可以簡單地使用一個公式,則模型矩陣將幕後來構造。所以,你甚至不需要自己獲得一個模型矩陣。
對於高級用戶,有時他可能想要使用內部擬合例程lm.fit
或甚至.lm.fit
。閱讀?lm.fit
這些例程。這些程序不接受模型公式,而是模型矩陣X
和響應矢量y
。在這種情況下,用戶自行負責生成X
和y
。
@ZheyuanLi所以你的意思是把它們導入爲'df $ red < - as.numeric(df $ red)'或者類似 – Danib90