dato un elenco:Converti lista R per dataframe con elementi mancanti/null
alist = list(
list(name="Foo",age=22),
list(name="Bar"),
list(name="Baz",age=NULL)
)
qual è il modo migliore per convertire questo in un dataframe con nome e l'età colonne, con valori mancanti (Accetterò NA o "" in quell'ordine di preferenza)?
I metodi semplici che utilizzano ldply
non riescono perché tenta di convertire ciascun elemento di elenco in un frame di dati, ma quello con il barfs NULL perché le lunghezze non corrispondono. Migliore che ho in questo momento è:
> ldply(alist,function(s){t(data.frame(unlist(s)))})
name age
1 Foo 22
2 Bar <NA>
3 Baz <NA>
ma che è piuttosto icky e la variabile numerica diventa un fattore ...
Kind of fastidioso che 'check.rows = FALSE dà ancora un errore su file con un diverso numero di osservazioni ... –