Hi, Not sure how you want the results to look like in .csv file. If "L" is the list of matrices, you can also use ?sink() sink("L.csv") L sink()
#L.csv output: $matrix1 var1 var2 var3 [1 ] 1 4 7 [2 ] 2 5 8 [3 ] 3 6 9 $matrix2 var4 var5 var6 [1 ] 4 7 3 [2 ] 3 4 5 [3 ] 2 3 2 If you want to do some analysis on the .csv file, you can try this: new3<-readLines("L.csv") new4<-new3[!grepl("matrix",new3)] new5<-gsub("\\[.*\\]","",new4) do.call(rbind,lapply(lapply(strsplit(new5," "),function(x) paste(unlist(strsplit(x," +")),collapse=" ")),function(x) unlist(strsplit(x,"+ ")))) # [,1] [,2] [,3] #[1,] "var1" "var2" "var3" #[2,] "1" "4" "7" #[3,] "2" "5" "8" #[4,] "3" "6" "9" #[5,] "var4" "var5" "var6" #[6,] "4" "7" "3" #[7,] "3" "4" "5" #[8,] "2" "3" "2" #Another way to save the file: out_file <- file("L1.csv", open="a") for (i in seq_along(L)){ write.table(names(L)[i], file=out_file, sep=",", dec=".", quote=FALSE, col.names=FALSE, row.names=FALSE) write.table(L[[i]], file=out_file, sep=",", dec=".", quote=FALSE, col.names=NA, row.names=TRUE) #writes the data.frames } close(out_file) # new1<-readLines("L1.csv") new2<-new1[!grepl("matrix",new1)] dat2<-do.call(rbind,lapply(strsplit(new2,","),`[`,2:4)) dat2 # [,1] [,2] [,3] #[1,] "var1" "var2" "var3" #[2,] "1" "4" "7" #[3,] "2" "5" "8" #[4,] "3" "6" "9" #[5,] "var4" "var5" "var6" #[6,] "4" "7" "3" #[7,] "3" "4" "5" #[8,] "2" "3" "2" A.K. ----- Original Message ----- From: Charles Determan Jr <deter...@umn.edu> To: Dennis Murphy <djmu...@gmail.com> Cc: r-help@r-project.org Sent: Friday, October 26, 2012 10:20 AM Subject: Re: [R] Merge matrices with different column names Dennis, This works well and is exactly what I wanted for these matrices. Thank you very much, however, when I would try to export the resulting list it just is bound by columns. Now this isn't so bad for 2 matrices but I hope to apply this where there are many matrices and scrolling down a file such as a 'csv' would be desired. Any thoughts on exporting a list of matrices? Thanks, Charles On Fri, Oct 26, 2012 at 12:00 AM, Dennis Murphy <djmu...@gmail.com> wrote: > Hi: > > You can't represent the same columns with different names in a matrix (or > data frame, for that matter). If you want to preserve variable names in the > various matrices and collect them into one R object, I'd suggest creating a > list, each component of which is a matrix. > > Toy example: > > m1 <- matrix(1:9, nrow = 3, dimnames = list(NULL, paste0("var", 1:3))) > m2 <- matrix(rpois(9, 5), nrow = 3, dimnames = list(NULL, paste0("var", > 4:6))) > L <- list(m1, m2) > names(L) <- paste0("matrix", 1:2) > L > > Dennis > > On Thu, Oct 25, 2012 at 8:51 PM, Charles Determan Jr <deter...@umn.edu>wrote: > >> A general question that I have been pursuing for some time but have set >> aside. When finishing some analysis, I can have multiple matrices that >> have specific column names. Ideally, I would like to combine these >> separate matrices for a final output as a csv file. >> >> A generic example: >> >> Matrix 1 >> var1A var1B var1C >> x x x >> x x x >> >> Matrix 2 >> var2A var2B var2C >> x x x >> x x x >> >> I would like a final exportable matrix or dataframe or whichever format is >> most workable. >> >> Matrix 3 >> var1A var1B var1C >> x x x >> x x x >> >> var2A var2B var2C >> x x x >> x x x >> >> However, no matter which function I try reports an error that the column >> names are not the same. >> >> Any insights would be appreciated. >> Thanks as always, >> Charles >> >> [[alternative HTML version deleted]] >> >> ______________________________________________ >> R-help@r-project.org 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. >> > > [[alternative HTML version deleted]] ______________________________________________ R-help@r-project.org 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. ______________________________________________ R-help@r-project.org 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.