View Full Version : MATLAB save command and transpose command
Saladsamurai
Apr30-09, 06:56 PM
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
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
Saladsamurai
May5-09, 12:49 AM
any takers on this one?
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.
Saladsamurai
May5-09, 10:57 AM
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:).
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
vBulletin® v3.8.7, Copyright ©2000-2012, vBulletin Solutions, Inc.