如果我有一个列表,例如在其中的坐标,我如何单独引用列表中每个元素的元素?
coord=list(c(104,1.5),c(144.97,-37.78),c(121.5,25.03))
我想做的是像
for(i in coord){
print(i[1])
print(i[2])}
以上示例不起作用 (在实践中,我当然会用它们来绘制一些东西)。
以下一个确实有效但我正在试着看看是否有更优雅的'R'方式。
coord=c(c(104,1.5),c(144.97,-37.78),c(121.5,25.03))
for(i in seq(1,length(coord),2)){
print(coord[i])
print(coord[i+1])
}
答案 0 :(得分:2)
我认为你只需要unlist
。
unlist(coord)
## [1] 104.00 1.50 144.97 -37.78 121.50 25.03
如果您希望将它们提取为2列数据进行绘图,那么您应该将unlist
ed数据投射到matrix
plot(matrix(unlist(coord), ncol = 2, byrow=TRUE))
这应该给你如下图
答案 1 :(得分:1)
我不知道你到底想要什么...
你不是想这么做吗?
> coord[[1]][1]
[1] 104