前言

最近学了不少回归分析的知识,用到了几个常用的Matlab命令,写在这里做个总结。

回归分析,就是研究几种变量之间的关系。如果你也很喜欢分析数据,这种技巧是基本的一项。(PS:高级的是机器学习。)

1 regress命令

用于一元及多元线性回归,本质上是最小二乘法。在Matlab 2014a中,输入help regress ,会弹出和regress的相关信息,一一整理。

调用格式:

B = regress(Y,X)

[B,BINT] = regress(Y,X)

[B,BINT,R] = regress(Y,X)

[B,BINT,R,RINT] = regress(Y,X)

B,BINT,R,RINT,STATS] = regress(Y,X)

[...] = regress(Y,X,ALPHA)

参数解释:

B:回归系数,是个向量(“the vector B of regression coefficients in the  linear model Y = X*B”)。

BINT:回归系数的区间估计(“a matrix BINT of 95% confidence intervals for B”)。

R:残差( “a vector R of residuals”)。

RINT:置信区间(“a matrix RINT of intervals that can be used to diagnose outliers”)。

STATS:用于检验回归模型的统计量。有4个数值:判定系数R^2,F统计量观测值,检验的p的值,误差方差的估计。

ALPHA:显著性水平(缺少时为默认值0.05)。

2 regress函数例程

目标函数:y=Ax1^2+Bx1^2+Cx1+Dx2+Ex1*x2+F  (这是一个二次函数,两个变量,大写的字母是常数)

%导入数据

y=[7613.51 7850.91 8381.86 9142.81 10813.6 8631.43 8124.94 9429.79 10230.81

... 10163.61 9737.56 8561.06 7781.82 7110.97]';

x1=[7666 7704 8148 8571 8679 7704 6471 5870 5289 3815 3335 2927 2758 2591]';

x2=[16.22 16.85 17.93 17.28 17.23 17 19 18.22 16.3 13.37 11.62 10.36 9.83 9.25]';

X=[ones(size(y)) x1.^2 x2.^2 x1 x2 x1.*x2];

%开始分析

[b,bint,r,rint,stats] = regress(y,X);

结果截图:

b为对应的参数 b(1)为F(最后那个常数项) ,b(2)为A(第一个参数),b(3)为B,b(4)为C,b(4)为D,b(5)为E。bint为b的95%置信区间。

比较重要的stats分析:

stats的第三个参数为F检测的P值,p值很小(P<0.001),说明拟合模型有效。(这里的分析技巧,以后有时间的话,会专门总结。)

(注:*号是乘法的意思,*前面的数是矩阵的系数。)

下面数据可视化看下。

%以下绘图查看拟合效果

scatter3(x1,x2,y,'filled') %scatter可用于画散点图

截图:

后续的分析如下:

%拟合,三维视图显示

hold on %在刚刚那副散点图上接着画

x1fit = min(x1):100:max(x1); %设置x1的数据间隔

x2fit = min(x2):1:max(x2); %设置x2的数据间隔

[X1FIT,X2FIT] = meshgrid(x1fit,x2fit); %生成一个二维网格平面,也可以说生成X1FIT,X2FIT的坐标

YFIT=b(1)+b(2)*X1FIT.^2+b(3)*X2FIT.^2+b(4)*X1FIT

... +b(5)*X2FIT+b(6)*X1FIT.*X2FIT; %代入已经求得的参数,拟合函数式

mesh(X1FIT,X2FIT,YFIT) %X1FIT,X2FIT是网格坐标矩阵,YFIT是网格点上的高度矩阵

view(10,10) %改变角度观看已存在的三维图,第一个10表示方位角,第二个表示俯视角。

%方位角相当于球坐标中的经度,俯视角相当于球坐标中的纬度

xlabel('x1') %设置X轴的名称

ylabel('x2') %设置y轴的名称

zlabel('y') %设置z轴的名称

最终结果截图:

参考文献:

http://wenku.baidu.com/link?url=HkCnQVFa7s0TR1_I7GOrH_jBitSG3Cgg8rDxhn-1ac3rsGhbCWCe2BYKVUDL6jh2n84qv_gdn2ZHBj1CoGHhLNrR84Fc8hvmnVT8aF8ybCu

matlab多元二次分析,Matlab篇----常用的回归分析Matlab命令(regress篇)相关推荐

  1. Matlab篇----常用的回归分析Matlab命令(regress篇)

    前言 最近学了不少回归分析的知识,用到了几个常用的Matlab命令,写在这里做个总结. 回归分析,就是研究几种变量之间的关系.如果你也很喜欢分析数据,这种技巧是基本的一项.(PS:高级的是机器学习.) ...

  2. matlab多元二次分析,MATLAB(2)--因子分析

    目的描述 ​ 出于模型的需要,我们的团队选择做一次因子分析,通常这部分在队伍中是会有同学专门负责这块的,至于为什么笔者就不在这里多说了. 解决思路 ​ 在MATLAB中封装了有关因子分析的方法--fa ...

  3. JVM 学习笔记二十五、JVM监控及诊断工具-命令行篇

    二十五.JVM监控及诊断工具-命令行篇 1.概述 性能诊断是软件工程师在日常工作中经常面对和解决的问题,在用户体验至上的今天,解决好应用软件的性能问题能带来非常大的收益. Java作为最流行的编程语言 ...

  4. matlab的二维曲线论文,基于几何画板与MATLAB绘制二维曲线

    第 26 卷 第 6 期 牡丹江大学学报 Vol.26 No.6 2017 年 6 月 Journal of Mudanjiang University Jun. 2017 132 文章编号:1008 ...

  5. matlab时域信号如何分析方法,信号时域采样频谱分析(matlab)

    <信号时域采样频谱分析(matlab)>由会员分享,可在线阅读,更多相关<信号时域采样频谱分析(matlab)(12页珍藏版)>请在读根文库上搜索. 1.基于matlab的时域 ...

  6. 结构可靠度matlab jc,结构可靠度分析的响应面法及其Matlab实现

    收稿日期: 20030221; 修改稿收到日期: 200308225基金项目 : 国家自然科学基金重大项目(59895410) ; 辽宁省自然科学基金(002067)资助项目作者简介 : 桂劲松(19 ...

  7. matlab 1 3倍频分析,[转载]1/3倍频程及Matlab程序实现

    倍频程是声学里人的可听频率范围内,将声音的频谱进行一定规则的集中,变成有限的几个频点对应的强度,这样描述比较起来容易,是一种公约的描述形式. 使用1/3倍频程主要是因为人耳对声音的感觉,其频率分辨能力 ...

  8. matlab波特一致性,一种基于MATLAB的数据一致性的分析方法与流程

    本发明属于电机性能数据的处理和分析技术领域,尤其涉及一种基于 MATLAB的数据一致性的分析方法. 背景技术: MATLAB是一种基于算法开发.数据可视化.数据分析以及数值计算的计算机高级编程语言和交 ...

  9. MATLAB透镜成像特征曲线及分析(二)

    MATLAB透镜成像特征曲线及分析(一)http://t.csdn.cn/Foq9J 上一篇文章我讲述了运用matlab画出并研究透镜物距与像距.物距与垂轴放大率的特征曲线,这一篇补充了物距与轴向放大 ...

最新文章

  1. iPhone应用程序图标 - 精确半径?
  2. react-native 小米手机和 mac 安装
  3. 怎么自学python自动化测试-python自动化测试如何自动生成测试用例?
  4. Xavier初始化和He初始化
  5. python的os库_os库(python)—总结
  6. java便签小程序原码_localStorage实现便签小程序
  7. 小米扫地机器人原地不动_小米扫地机器人的4个不可思议
  8. ImportError: cannot import name ‘py_checkpoint_reader‘ from ‘tensorflow.pyth
  9. CentOS6.5利用Docker部署ShowDoc
  10. 为web站点提供https服务的步骤
  11. 标记分布学习LDL与多标记学习MLL以及单标记学习
  12. 设置nextcloud上传文件的大小
  13. photoshop动作怎么安装?PS怎么导入动作?ps动作安装方法详细教程
  14. Spring入门笔记总结
  15. uni-app常见的生命周期
  16. 使用reduce实现数组扁平化
  17. 动画练习:Punch
  18. 自动驾驶TPM技术杂谈 ———— 超声波雷达系统测距
  19. python绘图之使用matplotlib连接两个点
  20. 信号量实现理发师问题

热门文章

  1. win7查看隐藏文件夹
  2. VS中修改解决方案/项目/类的名字
  3. 5月27日 | 极客俱乐部:集成平台赋能业务流程再造与创新
  4. 在 Jetpack Compose 中安全地使用数据流
  5. Linux操作系统的性能将主要取决于,高校邦Linux操作系统安全与性能调优章节测试答案...
  6. 计算机怎么搜索特定格式文件,win10 查找指定类型文件方法_win10怎么查找指定类型文件-win7之家...
  7. uni-app的editor的富文本编辑器
  8. 关于gcc -m32 -o 编译错误: /usr/bin/ld: cannot find -lgcc
  9. 模块化 AMD与CMD 规范
  10. D. Sequence and Swaps