Matlab数据线性化

Matlab数据线性化

Matlab数据线性化(求线性度)

本文适用于小白。因为我是小白,所以找了半天才总结的一种求线性度的方法,整理成了m文件,导入数据后可以一键出图求线性度啦~

事情是这样,我有一个如下形式的数据(Excel表格),需要将它拟合为一条直线然后求线性度。

基本的思路:先用最小二乘法,对数据进行拟合。再求两条线的最大差值。最后根据线性度公式求得线性度。

在Matlab的里,有用最小二乘法生成拟合曲线的指令。如下。

[p,s]=polyfit(x,y,1); %%% 数据拟合成直线

yy=polyval(p,x);

其中x对应A组数据,y对应B组,1表示拟合成一阶函数。修改这个可以拟合成高阶。求线性度需要的是直线,所以用的1阶。

我定义的yy,就是拟合后新的y。

拟合后的结果如下图:

然后求得两条线的最大差值,再根据线性度公式就可以求线性度啦!

求最大差值的代码:

yc=abs(y-yy); %% 差值的绝对值

m=max(yc); %%求最大值

再根据线性度计算公式:

δ=ΔYmax/ Y*100%

将输出结果:

linear =

0.1291

结果是百分数,所以应该是12.91%。

代码连接放在下面,希望能帮到大家。

https://download.csdn.net/download/qq_41977160/16091282

相关典藏

致敬!那些感天动地的抗战英雄
365bet博彩官网

致敬!那些感天动地的抗战英雄

📅 10-21 👁️‍🗨️ 6105
手机如何设置WiFi链接,这篇攻略小白也能轻松上手
365bet直播

手机如何设置WiFi链接,这篇攻略小白也能轻松上手

📅 06-27 👁️‍🗨️ 3702
mysqldump命令详解
bt365网址

mysqldump命令详解

📅 09-23 👁️‍🗨️ 5737