Arrays ';单元格';fprintf()的输入问题------MATLAB

Arrays ';单元格';fprintf()的输入问题------MATLAB,arrays,matlab,date,struct,printf,Arrays,Matlab,Date,Struct,Printf,我目前在实施方面遇到了一个问题: fprintf( '%6s %12s %12s\n','Date', 'res1', 'res2'); fprintf('%6s %12.8f %12.8f\n',o,A.'); 错误: 事实上: o is <6*1 cell> of dates mm/dd/yyyy o的日期为mm/dd/yyyy 鉴于 A is <2*6 double> of numbers A是数字的集合 因此我的疑问是: 1/是否存在解决方案来处理此

我目前在实施方面遇到了一个问题:

fprintf( '%6s %12s %12s\n','Date',  'res1',  'res2');
fprintf('%6s %12.8f %12.8f\n',o,A.');
错误:

事实上:

o is <6*1 cell> of dates mm/dd/yyyy
o的日期为mm/dd/yyyy
鉴于

A is <2*6 double> of numbers
A是数字的集合
因此我的疑问是:

1/是否存在解决方案来处理此问题,以及将屏幕结果从Matlab导出到my C:\上某个指定文件路径的data.csv


谢谢有时候for循环是最简单的:

fprintf( '%6s %12s %12s\n','Date',  'res1',  'res2');
for ii=1:length(o)
  fprintf('%6s %12.8f %12.8f\n',o{ii},A(:,ii));
end

MATLAB准确地告诉您问题是什么:将
o
从单元格转换为字符串数组。然后,要将其另存为文件,必须指定文件标识符
fid
。这一切在
fprintf
num2str(cell2mat())
的帮助页面中都有很好的描述,可能是因为格式
mm/dd/yyyyy
为字符类型(fyi)添加了更多行。这是一个非常准确的提示。干杯
fprintf( '%6s %12s %12s\n','Date',  'res1',  'res2');
for ii=1:length(o)
  fprintf('%6s %12.8f %12.8f\n',o{ii},A(:,ii));
end