在R中的括号之间提取数据

时间:2018-01-17 19:04:29

标签: r

原始数据:

550 LEE DR BATON ROUGE, LA 70802 (30.399995, -91.15418)
2810 SCENIC HW BATON ROUGE, LA 70805 (30.473461, -91.168378)
11201 MEAD RD BATON ROUGE, LA
550 LEE DR BATON ROUGE, LA 70802 (30.399995, -91.15418)
2810 SCENIC HW BATON ROUGE, LA 70805 (30.473461, -91.168378)
11201 MEAD RD BATON ROUGE, LA

对于R,我正在尝试设置一个代码,它会给我以下地理位置结果(记住我不希望NA记录消失但只是将其留空):

(30.399995, -91.15418)
(30.473461, -91.168378)
NA    
(30.399995, -91.15418)    
(30.473461, -91.168378)    
NA

我试过了:

ag <- data.frame(sub(".*\\((.*)\\).*", "\\1", 
geolocation$test.Geolocation, perl=TRUE))
ag

但无济于事。我很感激帮助。

1 个答案:

答案 0 :(得分:0)

尝试:

fun <- function(x){
  res <- regmatches(x, gregexpr("\\(.*\\)", x))[[1]]
  ifelse(length(res) == 0, NA_character_, res)
}

unlist(sapply(geolocation$test.Geolocation, fun))