Yuchen Luo <realityrandom <at> gmail.com> writes: > This should be a very common operation and I believe there should be a nice > way in R to handle it. I couldn't find it in the manual or by searching on > line. I am wondering if I could ask for some help in this community. > > I am trying to record the results of my program to a csv file in the hard > drive so as to save memory space and also to read the results in excel after > running the program. Every loop of my program will result in a list with > element belonging to different class. For example, things like > > a1 <- list(name="Fred", wife="Mary", no.children=3) > a2 <- list(name="Tom", wife="Joy", no.children=9) > a3 <- list(name="Paul", wife="Alic", no.children=5) > > I want the columns to have titles, in the example above, I want to see the > title "name", "wife" and "no.children" in the excel file. ....
Use a data frame to do the work, and save it with write.table or write.csv maxallocate=10 # we assume no more than 10 members myfamily = data.frame(name=rep(NA,maxallocate),wife=NA,nchildren=NA) myfamily[1,]=c("Fred","Ginger",3) myfamily[2,]=c("Charles","Mary",1) myfamily[4,]=c("Frank","Salsa",4) myfamily$name[3]="Anton" myfamily$wife[3]="Sue" myfamily$name[10] = "Charly" myfamily$name[8] = "Fuhrman" myfamily= myfamily[-1,] # delete first row myfamily= myfamily[-1,] # delete current first row, i.e. Charles # cleanup: assume that all entries having a name are valid myfamily = myfamily[!is.na(myfamily$name),] # oops .. I forgot .. another family member turned up unexpectedly #Add it explicitely rbind(myfamily,c("Tango","Tanga",33)) # The easy part. Check write.table for other options write.csv(myfamily,file="myfamily.csv",row.names=FALSE) ______________________________________________ R-help@stat.math.ethz.ch mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.