[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% 
	entry[, missingColumns] <- NA

do.call("rbind", myList)

More information about the R-help mailing list