我有一个看起来与此非常相似的数据框(基本上是城市及其在 map 上坐标的表格。请注意,坐标是 X、Y 值的列表。

foo <- data.frame(
  city = c("chicago", "new york"),
  coordinate = I(list(list(10, 15), list(20, 25))),
  myabbr = c("chi", "ny")
)

bar <- subset(foo, select=c("city", "coordinate"))

现在,我可以创建一个只有城市和坐标的新表。我真的希望 X 和 Y 值是一个单独的列。这是我试过的
bar <- subset(foo, select=c("city", "coordinate[1]", "coordinate[2]"))

我不确定如何做到这一点。

最佳答案

为您提供另一种选择,使用 listCol_w 中的 splitstackshape

library(splitstackshape)
listCol_w(foo, "coordinate")
#       city myabbr coordinate_fl_1 coordinate_fl_2
#1:  chicago    chi              10              15
#2: new york     ny              20              25

关于r - 从列中提取列表数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51151240/

10-12 23:30