Самый простой способ преобразовать список с векторами различной длины в data.frame в R
Здесь у меня есть список с векторами разной длины. И я хотел бы получить data.frame. Я видел много сообщений об этом в SO (см. Ссылку), но ни один из них не настолько прост, как я ожидал, потому что это действительно распространенная задача при предварительной обработке данных. Спасибо.
Здесь самое простое средствоas.data.frame(aa)
если он работает. Так что одна функция из базового пакета R будет отличной.sapply(aa, "length<-", max(lengths(aa)))
на самом деле имеет четыре функции.
Пример показан ниже.
Входные данные:
aa <- list(A=c(1, 3, 4), B=c(3,5,7,7,8))
Выход:
A B
1 3
3 5
4 7
NA 7
NA 8
A и B - это имена столбцов data.frame.
Один ответsapply(aa, '[', seq(max(sapply(aa, length))))
, но это тоже сложно.
ссылка: