根据现有模式 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
我有这个
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