我有一个看起来与此非常相似的数据框(基本上是城市及其在 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/