我有一个像这样的数据表:
id number
1 5562,4024,...,1213
2 4244,4214,...,244
3 424,4213
4 1213,441
...
我只想对数字的每一列的最后一部分进行子集化,应该像这样:
id number
1 1213
2 244
3 4213
4 441
...
那么我该怎么做呢?
一种选择是$
将字符串末尾()的数字捕获为a,
后面的组,并用\\1
捕获组的反向引用()替换
df$number <- as.numeric(sub(".*,(\\d+)$", "\\1", df$number))
或将字符(.*
)匹配到,,
然后将其替换为空白(""
)
df$number <- as.numeric(sub(".*,", "", df$number))
df <- structure(list(id = 1:4, number = c("5562,4024,...,1213",
"4244,4214,...,244",
"424,4213", "1213,441")), class = "data.frame", row.names = c(NA,
-4L))
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句