看板 R_Language 關於我們 聯絡資訊
[問題類型]: 程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來) [軟體熟悉度]: 使用者(已經有用R 做過不少作品) [問題敘述]: 我現在有個客戶購物的字串資料,這些字串有許多同義字(例如貧果 and 蘋果),我希望 能把同義字藉由我定義好的字典通通轉換成標準字。 [程式範例]: # 購物資料 data <- data.frame( "id" = seq(1, 8), "item" = c("貧果", "蘋果", "火龍果", "紅龍果", "番石榴", "珍珠拔", "馬拉巴栗 ", "發財樹") ) # 定義的字典 dict <- data.frame( "id" = seq(1, 9), "同義字" = c("貧果", "蘋果", "火龍果", "紅龍果", "芭樂", "番石榴", "珍珠拔 ", "馬拉巴栗", "發財樹"), "標準字" = c("蘋果", "蘋果", "火龍果", "火龍果", "芭樂", "芭樂", "芭樂", "發 財樹", "發財樹") ) [關鍵字]: 字串處理、文字探勘、中文轉換 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.161.141.140 ※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1539507544.A.EE8.html
andrew43: 如果是完整字串取代,就只是常見merge或join。 10/14 20:05
kial: 資料量不大的話用stringr::str_replace_all試試,建起來方便 10/15 20:43
kial: data$標準<-str_replace_all(data$同義,"火龍|紅龍","火龍") 10/15 20:48
kial: 上面是把"火龍果"或"紅龍果"都換成"火龍果"再寫回dataframe 10/15 20:50