matlab-线性回归
2024-09-05 12:55:40
1.调用函数regress(Y,X,alpha),plpha是置信度,如果直接用regress(Y,X)则默认置信度为0.05,Y是一个 的列向量,X是一个 的矩阵,其中第一列是全1向量。
2.函数返回值及意义
b 回归系数,是一个一维向量,第一个是回归方程的常数b0
bint 回归系数的置信区间,是一个2列的矩阵
r 残差
rint 残差置信区间,是一个2列的矩阵
stats 用于检验回归模型的统计量,有4个统计量,按输出顺序分别是相关系数R2,F值,与F对应的概率p,误差方差。
相关系数R2越接近1,说明回归方程越显著;F > F1-α(k,n-k-1)时拒绝H0,F越大,说明回归方程越显著;与F对应的概率p 时拒绝H0,回归模型成立。p值在0.01-0.05之间,越小越好。
3.出残差及其置信区间rcoplot(r,rint);结果是一个图
4.一元线性回归,y=b0 + b1 * x;
定义两个长度相同的一维数组后调用函数。
x = [ 1,2,3 ];
y = [ 3,5,7 ];
X = [ ones(length(y),1), x' ];%x'表示行向量转置为列向量
Y = y';
[ b,bint,r,rint,stats ] = regress(Y,X);
b
rcoplot(r,rint)
%输出1 2,则回归方程是y=1+2*x
绘制图表:plot(x,Y,'*',x,z,'r');%'*'表示原来的各个点,'r'表示回归方程连起来的线
5.多元线性回归,照着上面模板套用即可
y=[1 2 3 4 5 6 7 8];
%f是一个10*8的矩阵
x1=f(1,:);
x2=f(2,:);
x3=f(3,:);
x4=f(4,:);
x5=f(5,:);
x6=f(6,:);
x7=f(7,:);
x8=f(8,:);
x9=f(9,:);
x10=f(10,:);%把f的每一行赋值给各个xi
X=[ ones( length(y),1 ), x1',x2',x3',x4',x5',x6',x7',x8',x9',x10'];%把行向量转为列向量
Y=y';
[ b,bint,r,rint,stats ] = regress(Y,X);
参考:https://blog.csdn.net/u011089523/article/details/79203375
最新文章
- jQuery验证控件jquery.validate.js使用说明
- java substring
- appstore不能登陆
- Quartz.net(调度框架) 使用Mysql作为存储
- 博客恢复更新 工作环境转移到Linux
- 关于Domino数据库的软删除
- Swing应用开发实战系列之二:设计日期选择面板窗口
- MySql数据库1【概念】
- MYSQL 体系结构图
- Android Studio常用小技巧
- [UI] APP界面设计流程
- 使用nginx代理kibana并设置身份验证
- ZOJ2975 伪数组压缩+组合数
- [Swift]LeetCode7. 反转整数 | Reverse Integer
- 排序算法之快速排序的思想以及Java实现
- BZOJ4475[Jsoi2015]子集选取——递推(结论题)
- ajax控件无法使用 iis配置及web修改(转载)
- Microsoft JET Database Engine 错误 '80004005' 未指定错误
- vue 移动端的一些ui
- !!!!---linux常见问题和解决方案--我的