apr*_*ian 2 regex r data.table
我如何使用正则表达式模式从R数据表中复制列。
我需要提取具有字符串“ nbr [0-9] _” *的列,例如示例nbr1_L或nbr6_L
names<- c("nbr4","nbr4_L", "nbr5" ,"nbr6_L", "nbr7_L" ,"nbr4_L" ,"nbr4_L")
dt<- data.table(cbind("aa","bb","cc","dd","ff","gg","hh"))
setnames(dt,names)
Run Code Online (Sandbox Code Playgroud)
我在下面尝试
dt[, .SD, .SDcols = names(dt) %like% "nbr*_*"]
grep('^nbr\\d+\\_\\*$', names(dt), value=TRUE)
Run Code Online (Sandbox Code Playgroud)
这是一种处理方法%like%:
> idx <- names(dt) %like% '^nbr\\d+_.*'
> dt[, ..idx]
nbr4_L nbr6_L nbr7_L nbr4_L nbr4_L
1: bb dd ff gg hh
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
271 次 |
| 最近记录: |