df <- data.frame(a = c("1", "1", "2", "3", "3", "4", "4", "5"),b = c(1:8))
我試圖創建組列df$c
使得變量爲「1」,「2」和「3」,並且變量「4」和「5」在df$a
被分組在一起。如何由值在列創建「組」列
即
a b c
"1" 1 "group a"
"1" 2 "group a"
"2" 3 "group a"
"3" 4 "group a"
"3" 5 "group a"
"4" 6 "group b"
"4" 7 "group b"
"5" 8 "group b"
我無法使用cut()
,因爲這似乎需要2個<組。
我試圖將列a轉換爲數字類並使用ifelse()
。
df$a <- df$a %>% as.character %>% as.numeric
ifelse(df$a < 4, df$c == "group a", df$c == "group b"
但是,這強制每個變量NA
。
這兩個答案解決一下我一直在敲打我的頭撞牆了最後2小時。我選擇了你,因爲Pierre Lafortune的解決方案需要兩個額外的規格才能爲我工作。我很感激你的幫助。 –
感謝您的回覆。如果提到更多的團體,我也會使用皮埃爾拉福特的建議。另外,我想展示如何修復你的'ifelse'代碼。 – akrun