簡體   English   中英

如何將 MATLAB 的 output 寫入 txt 文件?

[英]How to write output of MATLAB to a txt file?

我想將 Matlab 代碼的結果 output 寫入.txt文件。

我的代碼是:

for i=1:1000;
  M{i}=rand(1,4)';
end

所以我嘗試:

fid=fopen('M.txt','wt'); 
fprintf(fid,'%.8f\n',M{i}); 
fclose(fid)

結果是 1*1000 單元格,每個單元格都有 4*1 矩陣。 但是 output 文件有 1*4000 個矩陣。 如何將逐列寫入.txt文件。

提前致謝。


matlab 截圖

我想為 1000 個矩陣並排寫下矩陣的所有值,如下所示。

 0.9572 0.9572 0.9572 0.9572 0.9572 0.9572 0.9572 0.9572 0.9572 0.9572 
 0.4854 0.4854 0.4854 0.4854 0.4854 0.4854 0.4854 0.4854 0.4854 0.4854
 0.8003 0.8003 0.8003 0.8003 0.8003 0.8003 0.8003 0.8003 0.8003 0.8003 
 0.1419 0.1419 0.1419 0.1419 0.1419 0.1419 0.1419 0.1419 0.1419 0.1419

您的格式說明符*.8f\n表示在新行上打印每個值。 如果要將四個值打印為四列,請使用如下格式說明符:

fprintf(fid,'%.8f %.8f %.8f %.8f\n',M{i});

如果您想一次只寫入一列數據,請像這樣指定哪一列:

fprintf(fid,'%.8f\n',M{i}(1));

然后你必須重復或循環來做其他 3 列。

正如您提到的,您的 MATLAB 版本是 R2019a,您可以直接使用writematrix

>> n = 4;
>> m = rand(1,n);
>> M = repmat(m.',1,1000);
>> writematrix(M,'M.txt','Delimiter','space')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM