精华内容
下载资源
问答
  • matlab多元非线性回归

    2014-09-22 13:41:39
    matlab多元非线性回归
  • matlab多元非线性回归及显著性分析给各位高手:小弟有一些数据需要回归分析(非线性)及显著性检验(回归模型,次要项,误差及失拟项纯误差,F值和P值),求大侠帮助,给出程序,不胜感激。模型:DA TA=... %DA TA前三列...

    matlab多元非线性回归及显著性分析

    给各位高手:小弟有一些数据需要回归分析(非线性)及显著性检验(回归模型,次要项,误差及失拟项纯误差,F值和P值),求大侠帮助,给出程序,不胜感激。

    模型:

    DA TA=... %DA TA前三列是影响因子,第四列为响应值

    [2 130 75 48.61;

    2 110 75 56.43;

    2 130 45 61.32;

    2 110 45 65.28;

    1 110 45 55.80;

    1 130 75 45.65;

    1 110 75 50.91;

    1 130 45 67.94;

    1.5 120 60 74.15;

    1.5 120 60 71.28;

    1.5 120 60 77.95;

    1.5 120 60 74.16;

    1.5 120 60 75.20;

    1.5 120 85 35.65;

    1.5 140 60 48.66;

    1.5 120 30 74.10;

    1.5 100 60 6

    2.30;

    0.5 120 60 66.00;

    2.5 120 60 75.10];

    回归分析过程:

    (1)MATLAB编程步骤1:首先为非线性回归函数编程,程序存盘为user_function.m function y=user_function(beta,x)

    b0 = beta(1);

    b1 = beta(2);

    b2 = beta(3);

    b3 = beta(4);

    x0 = x(:,1);

    x1 = x(:,2);

    x2 = x(:,3);

    x3 = x(:,4);

    y=b0*x0+b1*x1.^2+b2*x2.^2+b3*x3.^2;

    (2)MATLAB编程步骤2:编写非线性回归主程序,程序运行时调用函数user_function

    x=[1 2 130 75 48.61;

    展开全文
  • Matlab多元非线性回归(nlinfit 函数)

    万次阅读 2020-01-10 14:05:50
    Matlab中使用nlinfit 函数进行多元非线性回归

    在matlab中常使用 nlinfit函数 进行多元非线性回归。

    1. 基本语法

    语法参数说明
    beta = nlinfit(X, Y, modelfun, beta0)X -> 预测变量
    Y -> 响应值
    modelfun -> 指定的模型
    beta0 -> 参数初始值
    beta = nlinfit(X, Y, modelfun, beta0, options)options -> 评估算法的选择,默认为缺省,详见 options参考内容
    beta = nlinfit(___, Name, Value)指定可选的逗号分隔的名称、值参数对。
    Name是参数名,Value是对应的值,参数名必须出现在引号内。
    可以以任何顺序指定几个名称和值对参数,如Name1, Value1, …, NameN, ValueN。例如:‘ErrorModel’, ‘proportional’, ‘ErrorParameters’, 0.5…
    [beta, R, J, CovB, MSE, ErrorModelInfo] = nlinfit(___)R -> 残差
    J -> 雅可比矩阵
    CovB -> 估计方差-协方差矩阵
    MSE -> 均方差
    ErrorModelInfo -> 误差模型拟合信息

    2. 示例

    X = 1 : 10;
    Y = [0 4 8 17 29 34 54 62 80 99];
    mymodel = inline('beta(1) * X .^ beta(2)', 'beta', 'X');
    beta0 = [1, 2];
    beta = nlinfit(X, Y, mymodel, beta0);
    

    输出结果: beta = 1.203177103441870 1.913267782105321

    X = 1 : 10;
    Y = [0 4 8 17 29 34 54 62 80 99];
    mymodel = inline('beta(1) * X .^ beta(2)', 'beta', 'X');
    beta0 = [1, 2];
    [beta, R, J, CovB, MSE, ErrorModelInfo] = nlinfit(X, Y, mymodel, beta0);
    

    输出结果:

    beta =
    
       1.203177103441870   1.913267782105321
    
    
    R =
    
      -1.203177103441870
      -0.531902426953979
      -1.844423386925135
      -0.069922248918235
       2.839481428235956
      -3.080132352538584
       4.200106803860550
      -2.295789744078874
      -0.547303920433009
       0.463452664946701
    
    
    J =
    
       1.0e+02 *
    
       0.009999999999931                   0
       0.037666127981753   0.031412881732651
       0.081820231121898   0.108152737129980
       0.141873719717092   0.236641274909903
       0.217428643531115   0.421041233755697
       0.308185129687587   0.664393679618334
       0.413903226770619   0.969072093923712
       0.534383368398917   1.337009450489727
       0.669455022058049   1.769827653002497
       0.818969511416963   2.268918061872248
    
    
    CovB =
    
       0.036203997364694  -0.013926635931111
      -0.013926635931111   0.005406465988118
    
    
    MSE =
    
       5.764136230306152
    
    
    ErrorModelInfo = 
    
                  ErrorModel: 'constant'
             ErrorParameters: 2.400861560004273
               ErrorVariance: @(x)mse*ones(size(x,1),1)
                         MSE: 5.764136230306152
              ScheffeSimPred: 3
              WeightFunction: 0
                FixedWeights: 0
        RobustWeightFunction: 0
    

    欢迎大家批评指正。

    展开全文
  • MATLAB多元非线性回归

    万次阅读 多人点赞 2014-12-24 22:11:56
    解释变量:商品价格(x1)人均月收入(x2),被解释变量:商品需求量(y),进行二元回归分析,并进行检验  商品价格(元/件) 月收入(元) 需求(件) 89 550 5800 78 580 5000 70 ...

    解释变量:商品价格(x1)人均月收入(x2),被解释变量:商品需求量(y),进行二元回归分析,并进行检验  

    商品价格(元/件)

    月收入(元)

    需求(件)

    89

    550

    5800

    78

    580

    5000

    70

    600

    6200

    60

    650

    6800

    65

    720

    7100

    58

    750

    7800

    50

    830

    8900

    45

    880

    9000

    52

    850

    8500

    35

    920

    9400

    38

    1100

    9900


    Matlab代码:

    clear
    clc
    data = [89	78	70	60	65	58	50	45	52	35	38
    550	580	600	650	720	750	830	880	850	920	1100
    5800	5000	6200	6800	7100	7800	8900	9000	8500	9400	9900
    ]';
    x1 = data(:,1);
    x2 = data(:,2);
    y = data(:,3);
    X = [ones(size(x1)) x1.*x1 x1 x2.*x2 x2 x1.*x2];
    [b,bint] = regress(y,X)
    scatter3(x1,x2,y,'filled')
    hold on
    x1fit = min(x1):0.5:max(x1);
    x2fit = min(x2):0.5:max(x2);
    [X1FIT,X2FIT] = meshgrid(x1fit,x2fit);
    YFIT = b(1)+ b(2)*X1FIT.*X1FIT+b(3)*X1FIT + b(4)*X2FIT.*X2FIT + b(5)*X2FIT + b(6)*X1FIT.*X2FIT;
    mesh(X1FIT,X2FIT,YFIT)
    xlabel('x1')
    ylabel('x2')
    zlabel('Y')
    view(140,30)
    命令窗口:

    b =
    
      1.0e+004 *
    
        8.4841
        0.0006
       -0.1486
        0.0000
       -0.0098
        0.0001
    
    
    bint =
    
      1.0e+005 *
    
       -1.0110    2.7078
       -0.0001    0.0002
       -0.0443    0.0145
       -0.0000    0.0000
       -0.0036    0.0017
       -0.0000    0.0000

    图形:





    展开全文
  • matlab多元非线性回归教程》由会员分享,可在线阅读,更多相关《matlab多元非线性回归教程(2页珍藏版)》请在人人文库网上搜索。1、matlab回归(多元拟合)教程前言 1、学三条命令 polyfit(x,y,n)-拟合成一元幂函数...

    《matlab多元非线性回归教程》由会员分享,可在线阅读,更多相关《matlab多元非线性回归教程(2页珍藏版)》请在人人文库网上搜索。

    1、matlab回归(多元拟合)教程前言 1、学三条命令 polyfit(x,y,n)-拟合成一元幂函数(一元多次) regress(y,x)-可以多元, nlinfit(x,y,fun,beta0) (可用于任何类型的函数,任意多元函数,应用范围最主,最万能的) 2、同一个问题,这三条命令都可以使用,但结果肯定是不同的,因为拟合的近似结果,没有唯一的标准的答案。相当于咨询多个专家。 3、回归的操作步骤: 根据图形(实际点),选配一条恰当的函数形式(类型)-需要数学理论与基础和经验。(并写出该函数表达式的一般形式,含待定系数)-选用某条回归命令求出所有的待定系数。所以可以说,回归就是求待定系数的过。

    2、程(需确定函数的形式) 一、回归命令 一元多次拟合polyfit(x,y,n);一元回归polyfit;多元回归regress-nlinfit(非线性) 二、多元回归分析 对于多元线性回归模型(其实可以是非线性,它通用性极高): exxypp?110 设变量12,pxxx y的n组观测值为12(,)1,2,iiipixxxyin ? 记 ?npnnppxxxxxxxxxx?212222111211111,?nyyyy?21,则?p?10 的估计值为排列方式与线性代数中的线性方程组相同(),拟合成多元函数-regress 使用格式:左边用b=b, bint, r, rint, stats右边用=。

    3、regress(y, x)或regress(y, x, alpha) -命令中是先y后x, -须构造好矩阵x(x中的每列与目标函数的一项对应) -并且x要在最前面额外添加全1列/对应于常数项 -y必须是列向量 -结果是从常数项开始-与polyfit的不同。) 其中: b为回归系数,?的估计值(第一个为常数项),bint为回归系数的区间估计,r: 残差 ,rint: 残差的置信区间,stats: 用于检验回归模型的统计量,有四个数值:相关系数r2、F值、与F对应的概率p和残差的方差(前两个越大越好,后两个越小越好),alpha: 显著性水平(缺省时为0.05,即置信水平为95%),(alpha不。

    4、影响b,只影响bint(区间估计)。它越小,即置信度越高,则bint范围越大。显著水平越高,则区间就越小)(返回五个结果)-如有n个自变量-有误(n个待定系数),则b 中就有n+1个系数(含常数项,-第一项为常数项)(b-b的范围/置信区间-残差r-r的置信区间rint-点估计-区间估计 此段上课时不要:- 如果i?的置信区间(bint的第1i?行)不包含0,则在显著水平为?时拒绝0i?的假设,认为变量ix是显著的*(而rint残差的区间应包含0则更好)。b,y等均为列向量,x为矩阵(表示了一组实际的数据)必须在x第一列添加一个全1列。-对应于常数项-而nlinfit不能额外添加全1列。结果的系数就是与此矩阵相对应的(常数项,x1,x2,xn)。(结果与参数个数:1/5=2/3-y,x顺序-x要额外添加全1列) 而nlinfit:1/3=4-x,y顺序-x不能额外添加全1列,-需编程序,用于模仿需拟合的函数的任意形式,一定两个参数,一为系数数组,二为自变量矩阵(每列为一个自变量) 有n个变量-不准确,x中就有n列,再添加一个全1列(相当于常数项),就变为n+1列,则结果中就有n+1个系数。 x需要经过加工,如添加全1列,可能还要添加其他需要的变换数据。 相关系数r2越接近1,说明回归方程越显著;(r2越大越接近1越好)F越大,说明回归。

    展开全文
  • matlab偏最小二乘法代码,整理各种线性和非线性回归,参考网上资料
  • matlab多元非线性回归_推荐matlab 回归(拟合)总结前言1、学三条命令polyfit(x,y,n)拟合成一元幂函数(一元多次)regress(y,x)可以多元,nlinfit(x,y,’fun’,beta0) (可用于任何类型的函数,任意多元函数,应用范围最...
  • 拟合问题,我一般不再用MATLAB了,都是用1stopt软件。具体代码如下:Variable x1,x2,x3,x4,yz;Function yz=a*((-0.088)*(x1)^3+20.909*x1^2-1654.3*x1+43990)+b*368.31*exp(0.3316*x2)+c*(-13.042*x3+592.47)+d*532....
  • 基于MATLAB多元非线性回归模型学习资料
  • 基于MATLAB的多元非线性回归模型,matlab多元线性回归模型实例,matlab源码
  • 多元线性回归代码以及多元非线性回归代码数学建模
  • MATLAB实现多元非线性回归

    万次阅读 多人点赞 2019-01-10 16:25:36
    简单多元非线性回归算例 现有以下数据 i x1 x2 x3 y 1 1.1 2 3.2 10.1 2 1 2 3.2 10.2 3 1.2 1.8 3 10 4 1.1 1.9 2.9 10.1 5 0.9 2.1 2.9 10 假如有以下模型: y=ax1+bx2+cx32y=ax_1+bx_2+cx_3^2y...
  • 基于MATLAB多元非线性回归模型.pdf
  • 在回归分析中,如果有两个或两个以上的自变量,就...看到regress函数的例子,突然想到它居然可以用来做一些简单的多元非线性回归分析,例如,我们用它对一个多项式进行拟合,将要拟合的多项式进行展开,得到的其实...
  • 讲解MATLAB多元非线性回归方面的一篇学术论文,非常值得参考,很有用。
  • 基于MATLAB多元非线性回归模型.pdf
  • 基于MATLAB多元非线性回归模型
  • 关于如何使用Matlab构建多元非线性回归模型在数学建模中有许多情况需要用到多远非线性回归
  • 使用MATLAB进行多元非线性回归——nlinfit函数的使用

    万次阅读 多人点赞 2018-12-03 16:29:11
    帮我对象做数据分析时遇到的问题,发现网上matlab多元非线性回归例子很少,写下来这篇用作参考 使用beta= nlinfit(x, y, model, beta0)  ——x为自变量,可以是多个自变量 ——y为因变量,只能由一个 ——model...
  • MATLAB源码集锦-多元非线性回归代码
  • MATLAB多元线性回归

    2018-08-19 23:45:22
    MATLAB多元线性回归: 基于MATLAB的多元非线性回归模型.pdf 多元线性回归建模以及MATLAB和SPSS求解.pdf MATLAB语言在多元线性回归中的应用.pdf
  • Matlab与1stOpt多元非线性回归

    千次阅读 2020-10-29 21:08:46
    Matlab与1stOpt多元非线性回归,其中1stOpt无需设置初始值。
  • 数学建模之多元非线性回归

    万次阅读 2019-08-29 19:03:19
    友情链接: (1)使用MATLAB进行多元非线性回归——nlinfit函数的使用 ...(2)MATLAB多元非线性回归 https://blog.csdn.net/lucky51222/article/details/42130523 (3)MATLAB实现多元非线性回归 https:...
  • Matlab学习手记】多元非线性回归

    千次阅读 2019-08-16 10:46:15
    介绍两种方法做多元非线性回归:lsqcurvefit、Adagrad 法。 lsqcurvefit是Matlab提供的内置函数,用于基于最小二乘的曲线拟合问题;Adagrad是一种基于梯度的迭代方法,特点在步长不固定,随着迭代次数变化。 ...
  • matlab实现一元线性回归多元线性回归

    万次阅读 多人点赞 2018-01-30 10:58:46
    回归分析中,如果有两个或两个以上的自变量,就称为多元回归。事实上,一种现象常常是与多个因素相联系的,由多个自变量的最优组合共同来预测或估计因变量,比只用一个自变量进行预测或估计更有效,更符合实际。 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,070
精华内容 828
关键字:

matlab多元非线性回归

matlab 订阅