This question already has answers here:
Split data frame string column into multiple columns

(15 个回答)


4年前关闭。




我有一个包含这样一列位置的数据集(41.797634883,-87.708426986)。我想把它分成纬度和经度。我尝试使用 tidyr 包中的单独方法
library(dplyr)
library(tidyr)
df <- data.frame(x = c('(4, 9)', '(9, 10)', '(20, 100)', '(100, 200)'))
df %>% separate(x, c('Latitude', 'Longitude'))

但我收到了这个错误
Error: Values not split into 2 pieces at 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,

我究竟做错了什么?

最佳答案

指定分隔符

dataframe %>% separate(Location, c('Latitude', 'Longitude'), sep=",")

但是,extract 看起来更干净,因为您可以同时删除“()”
dataframe %>% extract(x, c("Latitude", "Longitude"), "\\(([^,]+), ([^)]+)\\)")

关于r - 如何使用单独的R将列分成两列,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32042621/

10-12 17:23