How to fprintf one large variable that is a table?
4 次查看(过去 30 天)
显示 更早的评论
I have a variable "fluence_rate" in my workspace that is a 24056x2000 table. How do I frpintf this and have it perfectly aligned column by column instead of one extremely long column? Also is it normal if it takes a really long time?
0 个评论
回答(1 个)
dpb
2018-7-12
编辑:dpb
2021-8-16
nCol=10; % how many columns you want???
fmt=[repmat('%11.3E',1,nCol) '.\n']; % format string for that many
fprintf(fid,fmt,X.'); % print array, note transpose
Adjust the column and format to suit
4 个评论
djk
2021-8-16
Thank you DB! I used your solution to print arrays with variable column numbers to a file. I found a typo, though -
fprintf(fid,X.')
should be
fprintf(fid,fmt,X.')
Thank you again.
dpb
2021-8-16
编辑:dpb
2021-8-16
Indeed, good catch...I'll fix the original to reflect.
BTW, NOTA BENE that normally the nCol would be size(x,2), the number of columns in the array itself -- but the Q? here with an array of 2000 seemed like might want to cut that down -- although if each column really were a variable, then it might still be the right thing to do, just that printing such a large array in human-readable text format is the questionable decision.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Characters and Strings 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!