[R] Beginner: How do I copy the results from a for loop in a csv file?

David Winsemius dwinsemius at comcast.net
Tue Mar 18 07:13:42 CET 2014


On Mar 17, 2014, at 7:32 PM, koushiki sarkar wrote:

> Hello
> I am using 2 for loops to find the difference between all rows of a matrix.
> I  need to store it to a csv file. I have written this:
> for (i in 0:length(datamat)){
> for (j in i+1:length(datamat)){
> x<-datamat[i,]-datamat[j,];
> y<-as.data.frama(x);
> write.csv(y, "dif.csv")
> }}
> 
> datamat is the original datamatrix and dif is the file i want to copy the
> results to.
> However, when i open this file, I find it empty. What is it that I'm doing
> wrong?

A) Not supplying a test case.
B) Not realizing the need for parentheses to clarify intended operator precedence.
C) Indexing by zero.
D) Not realizing that the "length" of a matrix is the product of n and m
E) Not reporting the complete error message(s).
F) Misspelling `as.data.frame`
G) Not using the 'file' argument to a write function.
H) HTML
I) Possibly:  expecting files to be written with append=TRUE but not using the append argument.

> Also, can I store the results of this loop in another matrix?

Not really, at least not as stated. The "result" of a for-loop is NULL. You need to make any assignments to object names using assignments within the loop.

> If
> then, how? I am new to R and not skilled in other programming languages.
> Any help is appreciated!
> Thank you
> 
> 	[[alternative HTML version deleted]]
> 
> ______________________________________________
> R-help at 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.

David Winsemius
Alameda, CA, USA




More information about the R-help mailing list