我正在尝试使用gsub()消除数据框中多行中的某些字符串和数字。
New Haven, CT (41.308252, -72924161)
MERIDEN, CT (41.537589, -72.8011)
以此类推。
但是我只想获取latitude (41.308252, 41.537589, etc.)
和longitude (-72924161, -72.8011, etc.)
,然后将它们放在单独的数据帧中。
结果应如下所示:
对于纬度
1. 41.308252
2. 41.537589
经度
1. -72924161
2. -72.8011
答案 0 :(得分:0)
我们可以在此处尝试使用sub
作为基本R选项:
df$lat <- sub(".*\\((-?\\d+(?:\\.\\d+)?).*", "\\1", col)
df$lng <- sub(".*\\([^,]+,\\s*(-?\\d+(?:\\.\\d+)?).*", "\\1", col)
以下是一个示例脚本,用于说明该逻辑有效:
col <- "New Haven, CT (41.308252, -72924161)"
sub(".*\\((-?\\d+(?:\\.\\d+)?).*", "\\1", col)
sub(".*\\([^,]+,\\s*(-?\\d+(?:\\.\\d+)?).*", "\\1", col)
这将输出:
[1] "41.308252"
[1] "-72924161"