簡體   English   中英

根據現有模式創建新列 R

[英]create new column based on existing pattern R

我有這個

tableRules <- as.data.table(data.frame(object_name = c("instr_asset_row","functional_cat","ref_sector_second")))

listDimPoss <- c("instr_asset","ref_sector","functional_cat")

我想在 tableRules: tableRules$DIMENSION 中創建一個新列,如果值包含 listdimPoss 中列出的模式,它將檢查 tablerules$object_name。 如果是,那么我希望 tableRules$Rimension 的值是 listDimPoss 中列出的模式。 所以我想要結果

tableRules$DIMENSION <- c("instr_asset","functional_cat","ref_sector")))

我們可以使用regex_left_join

library(data.table)
library(fuzzyjoin)
regex_left_join(tableRules,  data.table(DIMENSION = listDimPoss), 
     by = c("object_name" = "DIMENSION"))
        object_name      DIMENSION
1   instr_asset_row    instr_asset
2    functional_cat functional_cat
3 ref_sector_second     ref_sector

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM