File MATLAB:在文件中写入字符串和变量数
我有以下资料:File MATLAB:在文件中写入字符串和变量数,file,matlab,cell,File,Matlab,Cell,我有以下资料: a=[3 1 6]'; b=[2 5 2]'; c={'ab' 'bc' 'cd'}'; 现在我想创建一个如下所示的文件(分隔符为tab): 我的解决方案(带循环)是: 是否有可能不使用循环和/或直接在文件中写入单元数组 谢谢。这个怎么样: %A cell array holding all data % (Note transpose) data = cat(2, c, num2cell(a), num2cell(b))'; 将数据写入文件 fid = fopen('
a=[3 1 6]';
b=[2 5 2]';
c={'ab' 'bc' 'cd'}';
现在我想创建一个如下所示的文件(分隔符为tab):
我的解决方案(带循环)是:
是否有可能不使用循环和/或直接在文件中写入单元数组
谢谢。这个怎么样:
%A cell array holding all data
% (Note transpose)
data = cat(2, c, num2cell(a), num2cell(b))';
将数据写入文件
fid = fopen('example.txt', 'w');
fprintf(fid, '%s\t%u\t%u\n', data{:});
fclose(fid);
如果您的数据集变大(最好是作为单独的变量和循环离开),但似乎可以工作,这将是内存浪费。这样如何:
%A cell array holding all data
% (Note transpose)
data = cat(2, c, num2cell(a), num2cell(b))';
将数据写入文件
fid = fopen('example.txt', 'w');
fprintf(fid, '%s\t%u\t%u\n', data{:});
fclose(fid);
如果您的数据集变大(最好是作为单独的变量和循环离开),这将是内存浪费,但似乎可以工作。顺便说一句,dlmwrite或某些变体也可以这样做,但我似乎找不到要使用的写调用。顺便说一句,似乎
dlmwrite
或某些变体也应该能够做到这一点,但我似乎找不到要使用的write调用。