Создать data.frame из разного количества строк

Есть объекты с базовыми данными, такими как a<-list(a=1,b="A",c=character())

Теперь я хочу преобразовать его в data.frame, но там мне нужны одинаковые строки. Как легко заполнить пустые векторы с помощью NA as.data.frame(a)? единственная идея, которую я имею, это спросить, если один элемент списка имеет длину<1, то установить element[1]=NA,

1 ответ

Я не уверен, что это чище, но это избавляет от if материал:

lfoo<-list(one=1:3,two=character(),three=4:6,four=vector())
dfoo<-dfoo<-data.frame(one=rep(NA,3),two=rep(NA,3), three=rep(NA,3),four=rep(NA,3))
lvalues <-  which(unlist(lapply(1:4,function(x) length(lfoo[[x]]) > 0))
for (j in lvalues) dfoo[,jvalues]<-lfoo[[jvalues]]

Это может указать вам на простые способы обращения с конверсиями и выборочными заменами.

Другие вопросы по тегам