问题出在以下xlswrite
几行:
从xlswrite
文档:
xlswrite(filename,A,sheet)
写入指定的工作表。
这意味着您正在将字符串 'b' 写入工作表 'A1'xlswrite(filename,'b','A1');
xlswrite(filename,A)
将数组 A 写入 Excel 文件 filename 中的第一个工作表,从单元格 A1 开始。
你实际上不需要做任何事情就可以从 A1 开始写作。假设 b 是一个行向量:
xlswrite(filename,b');
正如你所写,应该足够了。
如果要指定工作表和列,可以使用
xlswrite(filename,A,sheet,xlRange)
更新:我现在不能尝试这个,但我认为它应该可以工作。
您可以计算a
and b
for eachorder
并将它们写入 xls 文件,如下所示:
r = 1; % row number
str = {'a', 'b'};
order = [1 3 5]; % The orders you want to calculate a and b with
for idx = 1:size(order, 2)
[b,a] = cheby2(order(idx), 20, 300/500); % I do not know about second
% and third parameters, you should
% check them.
vals = [a; b]; % assuming they are row vectors
cellName = strcat('A', r);
orderName = strcat('Order ', order(idx));
xlswrite(filename, orderName, 1, cellName)
r = r + 1;
for jdx=1:2
cellName = strcat('A', r);
xlswrite(filename, str{jdx}, 1, cellName);
r = r + 1;
cellName = strcat('A', r);
xlswrite(filename, vals(jdx, :), 1, cellName);
r = r + size(vals, 2);
end
end