我试图在Matlab中将一些数据拟合到非对称双S形(ADS)函数中。我从一篇关于动力学数据去卷积的论文中得到了这个函数,我想自己尝试一下以备将来使用(如果你感兴趣的话:https://link.springer.com/article/10.1007%2Fs10973-012-2500-6)。
我正在使用非线性拟合:
modelfun ='y~(b1 /(1 + exp( - (x-b2 +(b3 / 2))/ b4)))*(1-(1 + exp)((x-b2 +(b3 / 2) )/ B5))^( - 1))'
beta0 = [0.1 -14 55 1 -7]
mdlS = fitnlm(tempS,signalS,modelfun,beta0)
我认为这是第一个错误,其中包括:
使用classreg.regr.NonLinearFormula / parseStr时出错(第315行)
无法理解公式字符向量'y~(b1 /(1 + exp( - (x-b2 +(b3 / 2))/ b4)))*(1-(1 + exp((x-b2 +) (B3 / 2))/ B5))^( - 1))”
它表示对该方法的访问受到保护,如果我输入了正确的函数,我已多次检查过。
我错过了什么吗?或者fitnlm不适合这个功能吗?
提前谢谢你。