[問題] Excel的ifs如何在R裡面呈現

看板R_Language作者 (魚皮:))時間3年前 (2020/07/17 15:19), 3年前編輯推噓5(506)
留言11則, 4人參與, 3年前最新討論串1/1
[問題類型]: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) [軟體熟悉度]: 入門 [問題敘述]: 想請教Excel中的ifs如何在R中作呈現? 目前使用的是 gsub("原文","取代後文字",df) 去一個條件一個條件做轉換, 但因為條件數量太多, 若要每個條件寫一行, code會變得很長, 不知道有沒有什麼功能是可以一次處理多條件的呢? 查了一些網路上的資料, 有些人推薦使用mgsub(c("原文1","原文2"),c("取代後文字1","取代後文字2"),df) , 但自己嘗試過後卻出現以下錯誤訊息。 Error in mgsub(a, b, df) : pattern and replacement vectors must be the same length 不知道有沒有版友可以提供一些想法或建議呢? 謝謝! [關鍵字]: gsub mgsub -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 124.213.117.127 (日本) ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1594970344.A.CEC.html

07/17 15:27, 3年前 , 1F
你的取代後文字1有可能符合原文2的條件嗎?
07/17 15:27, 1F
※ 編輯: hahayunping (124.213.117.127 日本), 07/17/2020 15:29:25

07/17 15:30, 3年前 , 2F
是完全不一樣的內容~其實算是要把原文(全文字)分成
07/17 15:30, 2F

07/17 15:31, 3年前 , 3F
ABCDE這種組別~
07/17 15:31, 3F

07/17 15:33, 3年前 , 4F
需要多一個欄位來表示組別,所以在Excel是用ifs處理
07/17 15:33, 4F

07/17 15:52, 3年前 , 5F
源自不同package的mgsub有不同的用法,可先確認當下環境
07/17 15:52, 5F

07/17 16:03, 3年前 , 6F

07/17 16:05, 3年前 , 7F
用mutate搭配case_when,可以寫不同的判斷式,最後一行則是
07/17 16:05, 7F

07/17 16:05, 3年前 , 8F
如果都不符合則被分到C組,給原po參考看看~
07/17 16:05, 8F

07/17 18:13, 3年前 , 9F
如果只是單純要分成幾類,可以試試看轉成 factor , 輸入
07/17 18:13, 9F

07/17 18:13, 3年前 , 10F
每一個level 及對應的 label就可以了。
07/17 18:13, 10F

07/20 13:39, 3年前 , 11F
謝謝各位大大~來試試看!
07/20 13:39, 11F
文章代碼(AID): #1V4L3epi (R_Language)
文章代碼(AID): #1V4L3epi (R_Language)