我正在使用'公式'在Matlab中命令输出使用fit命令创建曲线拟合时使用的公式。公式以多行输出。我想使用str2func来创建字符串的匿名函数,但唯一可行的方法是字符串是否在一行中。我使用strrep(oldstr,'',[])去掉字符串中的空格,但只消除了每行中的空格,使字符串保持在单独的行中。
AKA我的等式最终会像这样结束:
a1*sin(b1*x+c1)+a2*sin(b2*x+c2)+a3*sin(b3*x+c3)+
a4*sin(b4*x+c4)+a5*sin(b5*x+c5)+a6*sin(b6*x+c6)+
a7*sin(b7*x+c7)+a8*sin(b8*x+c8)
当我想要这样的时候(它应该在一行中没有中断):a1*sin(b1*x+c1)+a2*sin(b2*x+c2)+a3*sin(b3*x+c3)+a4*sin(b4*x+c4)+a5*sin(b5*x+c5)+a6*sin(b6*x+c6)+a7*sin(b7*x+c7)+a8*sin(b8*x+c8)
感谢所有帮助
答案 0 :(得分:0)
您可以使用reshape
然后使用strrep
。
str1 = ['a ';'bb ';'ccc']
str2 = reshape(str1', 1, []) % all 1 one line after transposing the array
str3 = strrep (str2 , ' ', '') % remove spaces