[問題] 有效率的字串比對方法
代朋友發問,希望格式沒有錯
[問題類型]: 是否有更有效率的字串比對方法
[軟體熟悉度]: 入門(寫過其他程式,只是對語法不熟悉)
[問題敘述]: 版上各位前輩好,最近遇到處理比對字串的問題。欲處理的問題大概是這樣,想從 main 裡的字串內,找尋是否有匹配 match_list 裡的 element (不分大小寫),若有,則在新建立的變數 impute_name 裡填上匹配到的element。
目前可以用這種方法用迴圈讓每一個 element 都找一次,但是我的 match_list 其實很長,效率不彰,想請問是否有比較有效率的方法。
[程式範例]:
main <- data.table(string = c("NIKE is good", "how about adidas", "something else"))
match_list <- data.table(brand = c("Nike","Puma","Adidas"))
for(j in seq_along(match_list$brand)){
main[str_detect(str_to_lower(string),str_to_lower(match_list$brand[j]))
,impute_name := match_list$brand[j] ]
}
[環境敘述]:
R version 3.4.2 (2017-09-28)
Platform: x86_64-w64-mingw32/x64 (64-bit) Windows 8.1
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 198.13.33.248
※ 文章網址: https://www.ptt.cc/bbs/R_Language/M.1515398751.A.6BF.html
→
01/08 16:12,
7年前
, 1F
01/08 16:12, 1F
→
01/08 16:12,
7年前
, 2F
01/08 16:12, 2F
→
01/08 16:12,
7年前
, 3F
01/08 16:12, 3F
→
01/08 16:17,
7年前
, 4F
01/08 16:17, 4F
R_Language 近期熱門文章
PTT數位生活區 即時熱門文章
77
188