Я работаю с выходными данными из геосферы :: gcIntermediate, которая генерирует путевые точки Great Circle. Вывод - это список. Затем я устанавливаю длины отдельных элементов списка:Преобразование столбца матрицы в вектор с ошибкой по неизвестной причине
library(geosphere)
from = data.frame(lon = sample(-180:180,5), lat = sample(-90:90,5))
to = data.frame(lon = sample(-180:180,5), lat = sample(-90:90,5))
plot(gcIntermediate(from, to, n=30, breakAtDateLine=T, sp=T))
gcs = gcIntermediate(from, to, n=30, breakAtDateLine=T, sp=F)
print(gcs)
l = lapply(gcs, length)
Но, кажется, невозможно преобразовать этот список в простой вектор. Все, что я пытаюсь дает список или матрица размеров [100,1], например:
as.matrix(l)[,1]
as.vector(l)
ли эти данные имеют несколько отличную внутреннюю структуру, несмотря на то матрица? например сравните его с:
m = as.matrix(1:10)
m[,1]
Благодарен за помощь.
Я не понимаю, что это за выход. Является ли это списком матриц или списком векторов? Возможно, вы могли бы сделать 'dput (l)', чтобы показать нам (или просто 'dput (l [1: 2])', если это слишком длинное?) –
Также попробуйте 'sapply (l, class)', чтобы посмотреть, какой тип объектов, которые у вас есть. – asb
Возможно, мне что-то не хватает, но как насчет 'l.vector <- unlist (l)'? –