這可能是超級平凡的,但我無法弄清楚。 我正在編寫一個R腳本,用於清理/組織我的數據(仍在收集數據),以便一旦完成數據收集,我就會完成所有已寫入的內容。 我遇到了因子變量的問題。種族/種族變量存儲爲數字:1 =白色,2 =黑色,3 =亞洲人,4 =西班牙裔,5 =其他。 眼下五大變化是這樣的:指定因子變量
race <- c(1, 1, 3, 5, 2)
我想比賽變量轉換成的因素,所以我嘗試:
但我得到的錯誤:
Error in factor(race, labels = c("white", "black", "asian", "hisp",
"native", : invalid 'labels'; length 6 should be 1 or 4
我猜這是因爲我說有6個標籤,但在我的數據集中,只有6個可能結果中有4個是觀察結果。 我相信這可以用levels參數來解決,但我無法弄清楚何時何地使用它。我試過
race.f <- factor(race, levels = c("white", "black", "asian", "hisp",
"native", "other"))
它剛剛創建了一堆NAS。 如果我碰巧從6個種族中的每個種族的至少一個人收集數據,我上面發佈的代碼將工作。但是,這不會保證會發生。在收集數據之前編寫腳本時,我應該如何處理這個問題?我想要它來處理所有可能的結果。 謝謝!
或者你可以有標籤參數一起使用水平'factor':'race.f < - 因子(種族,等級= 1:6,標籤= C(」白色「,」黑色「,」亞洲「,」hisp「,」本地「,」其他「))。 – lmo
@lmo建議您單獨作爲答案。 – Gregor
@Imo我已經添加了你的建議謝謝! –