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

作者: hahayunping (魚皮:))   2020-07-17 15:19:02
[問題類型]:
程式諮詢(我想用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
作者: locka (locka)   2020-07-17 15:27:00
你的取代後文字1有可能符合原文2的條件嗎?
作者: hahayunping (魚皮:))   2020-07-17 15:30:00
是完全不一樣的內容~其實算是要把原文(全文字)分成ABCDE這種組別~需要多一個欄位來表示組別,所以在Excel是用ifs處理
作者: andrew43 (討厭有好心推文後刪文者)   2020-07-17 15:52:00
源自不同package的mgsub有不同的用法,可先確認當下環境
作者: locka (locka)   2020-07-17 16:03:00
http://i.imgur.com/cSJ36D4.jpg用mutate搭配case_when,可以寫不同的判斷式,最後一行則是如果都不符合則被分到C組,給原po參考看看~
作者: Gjerry   2020-07-17 18:13:00
如果只是單純要分成幾類,可以試試看轉成 factor , 輸入每一個level 及對應的 label就可以了。
作者: hahayunping (魚皮:))   2020-07-20 13:39:00
謝謝各位大大~來試試看!

Links booklink

Contact Us: admin [ a t ] ucptt.com