MATLAB save command and transpose command

  • #1
3,021
7
I have a bunch of row vectors saved as objects r1 r2 r3. I would like to send each set of data (row) to a text file, but I want it to save as a column. This means that I want to save the transpose of the data, i.e., r1' r2'...

Unfortunately, when I try to use
Code:
save r1.txt r1' -ascii

MATLAB thinks that the quote ' is an unbalanced string.

I know that an "easy fix" would be to create new objects like R1=r1';

but I don't really think that is efficient. How can I get around this?

thanks
Casey
 

Answers and Replies

  • #2
any takers on this one?
 
  • #3
any takers on this one?

As far as I know, the MATLAB function SAVE expects the following arguments:

save(<string (filename)>, <string (variable name 1)>, ... <string (variable name N)>, <string (options)>)

You are not passing the function actual variables, just the names. That's why you can't pass r1', because that is not a string.


Why is,

r1 = r1';
save('rrrrrs.txt', 'r1', '-ascii');

not efficient?

I mean, the transpose has to be done somewhere in memory.
 
  • #4
Why is,

r1 = r1';
save('rrrrrs.txt', 'r1', '-ascii');

not efficient?

I mean, the transpose has to be done somewhere in memory.

Because if I have ten r values, I have to create 10 new R=r' values.

I suppose I could write a for loop that does it for me, but for only 10 entries, that seemed a little tedious (possibly just laziness :smile:).
 
  • #5
lol, yeah.

You could probably write a wrapper around the save function, to do what you want.


function tSave(V)

vt = V';

save([num2str(V) '.txt'], 'vt', '-ascii');

end

then just call this little function instead
 

Suggested for: MATLAB save command and transpose command

Replies
2
Views
874
Replies
4
Views
230
Replies
4
Views
1K
Replies
1
Views
1K
Replies
5
Views
994
Replies
1
Views
931
Replies
4
Views
532
Replies
32
Views
1K
Replies
6
Views
405
Replies
2
Views
956
Back
Top