我正在考虑如何在数据框中的符号后获取字符。
14990349-1293
3935033-31
结果应该是
1293
31
我已经创建
substr(df$id,1,as.integer(gregexpr('-',df$id)-1))
但是这会在符号之前返回字符。我找不到一种方法,只能在符号后得到它-
答案 0 :(得分:4)
我们可以使用sub
as.numeric(sub(".*-", "", df$id))
答案 1 :(得分:1)
通过扩展OP尝试使用substr/substring
的另一种方法可以是:
substring(df$id,as.integer(gregexpr('-',df$id))+1) #Detect '-'.Then take all from right of it
#[1] "1293" "31"
数据:
df <- data.frame(id = c("14990349-1293","3935033-31"), stringsAsFactors = FALSE)
答案 2 :(得分:0)
sapply(strsplit(df$id, "-"), tail, 1)
"1293" "31"