1 定义

决定系数(coefficient of determination),也称为拟合优度(goodness of fit)。

决定系数反应了因变量 yyy 的波动有多少百分比能被 xxx 的波动所描述,即表征因变量 yyy 的变异中有多少百分比可由自变量 xxx 来解释。


2 如果用不同的线型拟合散点,则R2R^2R2是会随着变化的,因此要深刻理解公式

【提前提示】

  1. 拟合优度数值越大,说明自变量对因变量的解释程度越高,自变量引起的变动占总变动的百分比高。散点在 回归直线(注意这里并不一定是1:1线) 附近越聚集,一般认为 R2R^2R2 > 0.8 时,拟合效果较好!
  2. 对于上述回归直线,其可以是通过线性拟合得到的直线或曲线,也可以是自己指定的某一条线(如1:1线)。因此,如果是对线性拟合得到的直线求R2R^2R2, 则表明该回归直线对散点的拟合程度。
  3. 如果是对1:1线进行求R2R^2R2,可以反映观测值和模拟值的接近程度(这有些类似于相关系数CC的特性)。

2.1 求R2R^2R2的通用公示(网上搞的太乱了,满天飞)

3 Matlab 实现(以线性拟合为例)

% 创建样本
x = 1:100';
data = x + 50*rand(1, 100);% 拟合线性回归模型,
mdl = fitlm(x, data)mdl = Linear regression model:y ~ 1 + x1Estimated Coefficients:Estimate       SE       tStat       pValue  ________    ________    ______    __________(Intercept)    24.751        2.8809    8.5912    1.3673e-13x1             1.0266      0.049528    20.727     1.334e-37Number of observations: 100, Error degrees of freedom: 98
Root Mean Squared Error: 14.3
R-squared: 0.814,  Adjusted R-Squared 0.812
F-statistic vs. constant model: 430, p-value = 1.33e-37
>> mdl.Rsquared.Ordinary
ans =0.8143

【注意】上面通过Matlab自带的线性拟合工具,可以得到一阶线性或者高阶非线性的拟合曲线,和该线的对于样本的拟合优度。通过查看 mdl 对象的属性可以找到 R2R^2R2 = 0.8143, 注意,这里计算的是对最优回归线的,并不是1:1线的!,不信化,你看下面。

通过使用polyfit 函数可以对线性拟合直线进行检验,如下:

>> P = polyfit(x, data, 1);
>> PP =1.0266   24.7510

这两个参数就是ax+b的a和b,和上面计算的结果Estimate一致!

致谢知乎 “十一” 提供灵感
https://zhuanlan.zhihu.com/p/108464743

Matlab计算决定性系数(拟合优度)R2相关推荐

  1. 使用python与采样工具,批量对栅格进行采样,并将采样结果转excel后进行精度分析(2)——使用matlab计算NSE (纳什效率系数NASH)与R2

    接下来还需要对结果进行精度分析,在前面的过程产生了上百个EXCEL文件,需要对excel文件进行合并,然后只保留最后两列,同时要删除文件中的异常值(-9999,采样时的空值),之后进行精度分析. 为便 ...

  2. matlab画本征函数系,双势垒结构能量本征值和本征波函数系数的MATLAB计算

    云光技术 第 45卷 第 2期 双势垒结构能量本征值和本征波函数系数的 MATLAB计算 王忆锋 (昆明物 理研 究所,云南 昆明 650223) 摘要:晶体中的电子状态可以用波函数来描述.从计算角度 ...

  3. matlab数值拟合r2_用MATLAB求RMSE怎么用MATLAB计算均方误差

    用MATLAB求RMSE 怎么用MATLAB计算均方误差 www.zhiqu.org     时间: 2020-12-07 function f=RMSE(h1,h2) %RMSE return RM ...

  4. matlab画复变函数,科学网—复数复变函数的Matlab计算与绘图 - 周铁戈的博文

    复数复变函数的Matlab计算与绘图 周铁戈 复数的表示 存在两种表示方法,一种是代数式,一种是指数式,在Matlab中的方式如下: >> z=1+2i            #代数式,1 ...

  5. matlab计算矩阵的相关系数矩阵,计算二维矩阵的相关系数

    很久没有用Matlab工具了,最近由于需要数据处理所以又重拾起 主要记录如何用Matlab计算矩阵的相关系数方法 矩阵形式:4096*3575 目标:得到该矩阵每一行与其余行数据之间的相关系数矩阵(4 ...

  6. 光纤模式分布 matlab,matlab计算单模光纤模式分布(公布源代码及参考文献)

    最近在使用matlab计算单模光纤纤芯模及包层模模场分布时,有一些问题一直悬而未决,多次咨询原作者后虽解决了部分问题,但是余下的问题原作者也不理我了,特发此贴以广交学习光纤方面的同学.老师及科研人员, ...

  7. 用Matlab计算多项式的值

    本篇文章中,将会介绍Matlab计算一元多项式的基本原理和仿真过程.我们假设多项式P(x)有如下的形式:P(x)=anxn+an-1xn-1+-+a1x+a0 我们计算这个多项式的方法是synthet ...

  8. 二维静电场有限元matlab,利用MATLAB计算电磁场有关分布

    <利用MATLAB计算电磁场有关分布>由会员分享,可在线阅读,更多相关<利用MATLAB计算电磁场有关分布(17页珍藏版)>请在人人文库网上搜索. 1.电磁场实验报告实验一 模 ...

  9. 数学建模笔记(十一):统计模型(MATLAB计算,函数参数解释待补充)

    文章目录 一.概述 二.参数估计--区间估计 1.糖果称重(求总体均值 μ \mu μ的双侧置信区间) (一)根据公式计算结果 (二)直接使用 t t e s t ( ) ttest() ttest( ...

最新文章

  1. SAP WM 因Layout设置不对导致LX02报表查不到库存数据
  2. 迈克尔戴尔展望医疗愿景:信息驱动创新
  3. DataTable添加列和行的三种方法
  4. php面向对象全攻略 (十四),php面向对象全攻略 (十四) php5接口技术
  5. Webbench网站压力测试
  6. 深度学习端上部署工具
  7. 七天入门图像分割(1):图像分割综述
  8. 44年前的今天,改变世界的TA诞生了! | 极客头条
  9. navicat修改表的主键自增长报错
  10. php的优化参数有哪些,php 参数优化
  11. Linux操作系统下进程讲解(史上最强总结)
  12. 建立可视化决策平台,“数据化”首当其冲!
  13. java基础 作业(一)
  14. arraylist 线性不安全_Java面试系列(一)--集合类ArrayList
  15. ROS下使用摄像头进行机器人巡线功能(附带功能包链接)
  16. mysql主从配置文件
  17. 阿里云服务器中目录的简单介绍及简单使用
  18. 十大免费响应式Joomla主题
  19. (五十二)剑网三大风车伤害计算器
  20. log4j xml配置保存日志天数

热门文章

  1. 5. 三大函数:拷贝构造 拷贝赋值 析构函数
  2. 下拉菜单的两种实现方式
  3. 处女座——菜鸟程序员的工程总结
  4. Java精美思维导图
  5. Adobe发布Reader和Acrobat漏洞补丁
  6. 被SLC、MLC、TLC搞晕?一文了解所有闪存类型
  7. 第五届机器学习、模式识别与智能系统国际会议 (MLPRIS 2022)
  8. java sql formatter_sql-formatter结合CodeMirror格式化SQL
  9. 【10年运维整理】服务器常见故障及其解决方法
  10. 【历史上的今天】3 月 27 日:《华尔街日报》技术专栏作家出生;AMD 推出 K5 处理器;匈牙利数理逻辑的奠基人诞生