A maneira mais simples de converter uma lista com vários vetores de comprimento em um data.frame em R
Aqui eu tenho uma lista com diferentes vetores de comprimento. E eu gostaria de obter um data.frame. Eu já vi muitas postagens sobre isso no SO (consulte ref), mas nenhuma delas é tão simples quanto eu esperava, porque essa é realmente uma tarefa comum no pré-processamento de dados. Obrigado.
Aqui meios mais simplesas.data.frame(aa)
se isso funcionar. Portanto, uma função do pacote base do R será ótima.sapply(aa, "length<-", max(lengths(aa)))
tem quatro funções, na verdade.
Um exemplo é mostrado abaixo.
Entrada:
aa <- list(A=c(1, 3, 4), B=c(3,5,7,7,8))
Resultado:
A B
1 3
3 5
4 7
NA 7
NA 8
A e B são os nomes das colunas do data.frame.
Uma resposta ésapply(aa, '[', seq(max(sapply(aa, length))))
, mas também é complexo.
ref: