假设我在R中有以下数据。我试图将它们分成2个向量/列表,每个列从每列,意思是(537715.4,537710.1,...)和(5741048.3,5741051.3,...) 。我试过并转向循环解决方案。有没有更清洁的方法来实现这一目标?
>x
[[1]]
[[1]][[1]]
[1] 537715.4 5741048.3
[[1]][[2]]
[1] 537710.1 5741051.3
[[1]][[3]]
[1] 537713.5 5741057.3
[[1]][[4]]
[1] 537700.3 5741064.6
[[1]][[5]]
[1] 537697.1 5741058.9
[[1]][[6]]
[1] 537681.1 5741067.8
[[1]][[7]]
[1] 537686.7 5741080.7
[[1]][[8]]
[1] 537701.3 5741072.6
[[1]][[9]]
[1] 537709.6 5741067.9
[[1]][[10]]
[1] 537721.9 5741061.1
[[1]][[11]]
[1] 537715.4 5741048.3
答案 0 :(得分:3)
我们可以使用base R
matrix(unlist(x), nrow=2)
# [,1] [,2] [,3] [,4]
#[1,] 537715.4 537710.1 537713.5 537700.3
#[2,] 5741048.3 5741051.3 5741057.3 5741064.6
x <- list(list(c(537715.4, 5741048.3), c(537710.1, 5741051.3)),
list(c(537713.5, 5741057.3), c(537700.3, 5741064.6)))