欢迎来到天天文库
浏览记录
ID:56525585
大小:37.50 KB
页数:8页
时间:2020-06-27
《浅谈matlab多变量拟合.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、首先申明本人是土木专业的,因为有需要要用到matlab中的拟合用途,今天好好学习了一些关于matlab多变量拟合的东西,从网上下载了一些程序,也运行了一下,就举一些实例,附上源程序吧,主要是两个自变量和三个自变量,一个因变量的拟合。让自己也更清楚,以后用起来也方便。 原理就是给出一个自变量和因变量的矩阵,然后给出一个自己认为的带有未知数的拟合方程,然后付一组初始值,根据matlab返回的初始值和误差在附一组初始值,知道最后的相关系数较大,也就是误差较小时,就能拟合的比较好,写出拟合后的方程了。1.广义线性回归
2、拟合和源码(两个自变量,一个因变量,非线性拟合)【例】这里有这样一组数据,涉及三个变量:p,t和z,要拟合出z=f(p,t)的关系式(非线性的)。 z p 0.8 1 1.2t 60 9.73875 20.75 36.5987 120 13
3、.5725 29.6325 50.93875180 18.97875 36.59875 80.13875240 2075125 38.22125 90.925300 22. 44.58 104.7725
4、为了使得回归分析的结果更加直观,我调用regstats函数,编写了一个更为实用的函数:reglm,代码如下(代码中有调用方法和例子)。首先写一个M文件:functionstats=reglm(y,X,model,varnames)%多重线性回归分析或广义线性回归分析%% reglm(y,X),产生线性回归分析的方差分析表和参数估计结果,并以表格形式显示在屏幕上.参% 数X是自变量观测值矩阵,它是n行p列的矩阵.y是因变量观测值向量,它是n行1列的列向量.%% stats=reglm(y,X),还返回一个包括
5、了回归分析的所有诊断统计量的结构体变量stats.%% stats=reglm(y,X,model),用可选的model参数来控制回归模型的类型.model是一个字符串,% 其可用的字符串如下% 'linear' 带有常数项的线性模型(默认情况)% 'interaction' 带有常数项、线性项和交叉项的模型% 'quadratic' 带有常数项、线性项、交叉项和平方项的模型% 'purequadratic' 带有常数项、线性项和平方项
6、的模型%% stats=reglm(y,X,model,varnames),用可选的varnames参数指定变量标签.varnames % 可以是字符矩阵或字符串元胞数组,它的每行的字符或每个元胞的字符串是一个变量的标签,它的行% 数或元胞数应与X的列数相同.默认情况下,用X1,X2,…作为变量标签.%% 例:% x=[215250250215215250215215% 136.5136.5136.5.5.5.5140.5140.5140.5.5.5]';% y=[6.27.54.85.14
7、.64.62.83.14.34.94.1]';% reglm(y,x,'quadratic')%% ----------------------------------方差分析表----------------------------------% 方差来源 自由度 平方和 均方 F值 p值% 回归 5.0000 15.0277 3.0055 7.6122 0.0219%
8、 残差 5.0000 1.9742 0.3948% 总计 10.0000 17.0018%% 均方根误差(RootMSE) 0.6284 判定系数(R-Square) 0.8839% 因变量均值(DependentMean) 4.7273 调整的
此文档下载收益归作者所有