[R] rbind with different columns
Antje
niederlein-rstat at yahoo.de
Wed Oct 21 08:52:48 CEST 2009
Karl Ove Hufthammer wrote:
> In article <4ADDC1D0.2040506 at yahoo.de>, niederlein-rstat at yahoo.de
> says...
>> In every list entry is a data.frame but the columns are only partially
>> the same. If I have exactly the same columns, I could do the following
>> command to combine my data:
>>
>> do.call("rbind", myList)
>>
>> but of course it does not work with differnt column names. Is there any
>> easy way to retrieve a combined table like this:
>
> You're in luck. 'rbind.fill' in the 'plyr' package does exactly what you
> want.
>
Thanks a lot for your hint. I'll give it a look :-)
So far, I have solved it with basic tools like this (it's less work than
I thought):
availableColumns <- unique(unlist(sapply(myList, names)))
myList <- lapply(myList, FUN = function(entry) {
missingColumns <- availableColumns[which(!availableColumns %in%
names(entry))]
entry[, missingColumns] <- NA
entry
})
do.call("rbind", myList)
More information about the R-help
mailing list