Problem with dlmwrite writeing a tensor in a csv file
2 ビュー (過去 30 日間)
古いコメントを表示
Hi guys,
I need to save a tensor in a file..I'm using this solution:
n=268;
m=4381;
d=7;
dati_orig=zeros(n,m,p);
for i=1:n
for j=1:m
for k=1:p
dati_orig(i,j,k)=dati_copia(i,j,k);
end
end
end
fid2 = fopen('dati_orig.csv','w');
for k=1:p
ele=xmat_orig(:,:,k);
dlmwrite('dati_orig.csv', ele, '-append' )
dlmwrite('dati_orig.csv', ' ' ,'-append' )
end
fclose(fid2);
where dati_copia is the tensor to save. The tensor must to be wrote in the file in this manner:
1 2 3 \\ % \\ is equal to \n newline 4 5 6 \\ 7 8 9 \\ %a blank row 10 11 12 \\ 13 14 15 \\ 16 17 18 \\ ......
This code works fine because with a small tensor it's ok. But I'm writing a tensor of dimensions 268x4381x7 and between each slice there is not a blank line as I want. The csv file must to have 1888 lines but the file has only 1882 rows. Can someone help me? Is it the wrong code? Thanks. giuseppe
0 件のコメント
回答 (2 件)
Amit
2014 年 1 月 25 日
編集済み: Amit
2014 年 1 月 25 日
Try this:
% fid2 = fopen('dati_orig.csv','w');
for k=1:p
% ele=xmat_orig(:,:,k);
dlmwrite('dati_orig.csv', dati_orig(:,:,k), '-append' )
dlmwrite('dati_orig.csv', ' ' ,'-append' )
end
% fclose(fid2);
BTW, if you're trying to save dati_copia, why copy it again exactly the same. Also, what is xmat_orig because this is what you're writing in the csv file in your code.
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Data Import and Export についてさらに検索
製品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!