首页 > 解决方案 > 合并坐标列并创建新序列

问题描述

我必须关注数据框。

    x1     x2          x3
    0   58.33546    15.14554
    0   58.33604    15.14571
    0   58.33645    15.14581
    0   58.33681    15.14591
    0   58.33722    15.14600
    0   58.33810    15.14604
    0   58.33900    15.14599
    0   58.33966    15.14578

由long和lat组成,每一对都属于一个字符串(0,1,3,4等,上面只显示字符串0)。

我想先用 (x2,x3) 对构建一个新列。我怎么做?

上面对应0的坐标实际上是一个旅程(比如X),如果有另一个旅程(Y)的第一个坐标与最后一个X相同,我想将序列X和Y坐标合并在一起,称那个旅程X (只是 X 的延续)。

我的数据集称为数据,由于某种原因将它们合并在一起无法使用

data[, x4 := paste(data$x2, data$x3)]

这将创建一个新列,仅显示 x2?

标签: r

解决方案


我不太习惯 data.table 语法,但这肯定会起作用:

data <- data.frame(x1 = c(0,0), x2 = c(58.33546, 58.33604), x3 =  c(15.14554, 15.14571))

data$x4 <- paste(data$x2, data$x3, sep = ",")

推荐阅读