我正在研究曲线拟合等问题,需要找到50点的三次拟合导数。这些问题要求找出数据中细菌的增长率。我目前的代码是Matlab - polyval数据区分
time = [1,2,4,5,7,9];
bacteria = [2000,4500,7500,15000,31000,64000];
rcubic = polyfit(time,bacteria,3);
newTime = linspace(1,7,50);
vrcubic = polyval(rcubic,newTime);
growthRate = [diff(vrcubic)./diff(newTime)];
derivative = diff(vrcubic)
我想知道是否growthRate或衍生物是正确的这个问题,或者如果他们都是错误的。因为它们给出明显不同的价值。也随着矢量的长度缩短。
干杯
'growthRate'将代表'物理'增长率。然而,我认为最好用'newTime = linspace(time(1),time(end),50)替换'newTime = linspace(1,7,50);'' – user1391279