how to convert matrix column into separate text?

Hi all, I have a 365*45 matrix, which represents one-year data for 45 subbasins. I would like to convert each column of the matrix to a separate text file (45 text file with a year data) and naming the file as subbasin_1, subbasin_2 etc. Any thought would be highly appreciated.

 採用された回答

Rik
Rik 2017 年 6 月 20 日

0 投票

You obviously did not Google/Bing/Yahoo this.
You can use a loop, combined with sprintf to do this.
for n=1:45
filename=sprintf('subbasin_%d.txt',n);
fid=fopen(filename);
%
%put your writing code here
%
fclose(fid);
end

3 件のコメント

Hydro
Hydro 2017 年 6 月 21 日
編集済み: Walter Roberson 2017 年 6 月 21 日
Hi Rik,
Thanks, that get me going. here is my code with slight modification to yours.
for n=1:45
filename=sprintf('Precip_%d.txt',n);
fid=fopen(filename, 'wt');
fprintf(fid,'%.1f\n',my_Prec(:,n));
fclose(fid);
end
I would like to append these text file with a specific date (same across all the text file) on the top row of each text file i.e.
precip_1.txt
01011986
0.8
0.5
1.2
0.0
...
...
etc
Walter Roberson
Walter Roberson 2017 年 6 月 21 日
After the fopen() and before the fprintf(), add another fprintf() that puts in the header you want.
Hydro
Hydro 2017 年 6 月 21 日
Excellent. Thank you Walter and Rik.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeCharacters and Strings についてさらに検索

質問済み:

2017 年 6 月 20 日

コメント済み:

2017 年 6 月 21 日

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by