[R] how to assemble data frame of unknown number of columns in loop

Rolf Turner rolf.turner at xtra.co.nz
Sun Apr 24 10:07:54 CEST 2011


On 24/04/11 16:44, Nevil Amos wrote:
> How do I assemble  ad data fame, consisting of columns form other data 
> frames identified in a loop?  cbind is not working as the initial data 
> fame has 0 columns and rows.
>
> > ModList<-dir("./MODEL_DISTS/")
> > ModList<-ModList[grep(pattern="3COLUMNS",ModList)]
> > ALL_MODELS<-data.frame()
> > for (i in ModList){
> + X<-read.table(file=paste("./MODEL_DISTS/",i,sep=""))
> + BASE=sub("3COLUMNS","" , i, fixed = TRUE)
> + names(X)<-c("FromSiteID","ToSiteID","CS_RESISTANCE")
> + ALL_MODELS<-cbind(ALL_MODELS,X[3])
> + }
> Error in data.frame(..., check.names = FALSE) :
>   arguments imply differing number of rows: 0, 2080
Start with ALL_MODELS <- NULL r.t. ALL_MODELS <- data.frame().

     cheers,

             Rolf Turner



More information about the R-help mailing list