24小时热门版块排行榜    

CyRhmU.jpeg
南方科技大学公共卫生及应急管理学院2026级博士研究生招生报考通知(长期有效)
查看: 1000  |  回复: 3
【悬赏金币】回答本帖问题,作者kk1424将赠送您 50 个金币

kk1424

主管区长 (著名写手)

中药研究者

优秀区长优秀区长优秀版主优秀版主

[求助] 求高手帮忙为小弟做一个四元回归曲线,高分悬赏!已有1人参与

遇到棘手的问题,我有MATLAB软件,但不是很会。求高手达人,帮忙给个编程。。。。感激不尽.
这回归方程:
y1=0.227220-0.002859x1+0.018825x2-0.003369x3-0.021391x4

拜托了!
回复此楼
药理毒理
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

feixiaolin

荣誉版主 (文坛精英)

优秀版主

【答案】应助回帖

感谢参与,应助指数 +1
figure(1);
x=start:step:end;
y =0.227220-0.002859*x+0.018825*x^2-0.003369*x^3-0.021391*x^4;
plot(x, y,"可设曲线属性";

关键是
x=start:step:end   始点,重点均未知不知道
2楼2014-02-25 17:30:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

feixiaolin

荣誉版主 (文坛精英)

优秀版主

引用回帖:
2楼: Originally posted by feixiaolin at 2014-02-25 17:30:50
figure(1);
x=start:step:end;
y =0.227220-0.002859*x+0.018825*x^2-0.003369*x^3-0.021391*x^4;
plot(x, y,"可设曲线属性";

关键是
x=start:step:end   始点,重点均未知不知道

看错了,是回归。
matlab回归  
https://wenku.baidu.com/view/87fa18e0524de518964b7d27.html
3楼2014-02-25 17:33:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

feixiaolin

荣誉版主 (文坛精英)

优秀版主

Matlab多元线性回归

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

其中b 是回归方程中的参数估计值,bint 是b 的置信区间,r 和rint 分别表示残差及残差对应的置信区间。StatS 数组包含三个数字,分别是相关系数,F 统计量及对应的概率p 值。
拟合结果:
Y=b(1)x(1)+b(2)x(2)+b(3)x(3)+…+b(n)x(n)
b(1)是系数,x(1)为全1的一个列向量。
注意:不是插值。


x=[1097 1284 1502 1394 1303 1555 1917 2051 2111 2286 2311 2003 2435 2625 2948 3155 3372];%因变量时间序列数据
y=[698 872 988 807 738 1025 1316 1539 1561 1765 1762 1960 1902 2013 2446 2736 2825];%自变量时间序列数据
X=[ones(size(x')),x'];
[b,bint,r,rint,stats]=regress(y',X,0.05);%调用一元回归分析函数
rcoplot(r,rint)%画出在置信度区间下误差分布.

举例:
x =

     1     2     4     9
     1     4     3     7
     1     5     9     0
     1     9     1     8
>> y=[10 3 90 48]';
>> [ b , bint , r , rint , stats ]=regress ( y , x )

得到的结果
b =

-186.8333
   16.0238
   21.8571
    8.5952


bint =

   NaN   NaN
   NaN   NaN
   NaN   NaN
   NaN   NaN


r =

  1.0e-013 *

   -0.5684
   -0.9948
   -0.1421
    0.1421


rint =

   NaN   NaN
   NaN   NaN
   NaN   NaN
   NaN   NaN


stats =

     1   NaN   NaN   NaN
另外,用b=inv(x)*y
得到的结果和上面用regression得到的一样。可见,求逆的问题也是用了最小二乘的原理。


但是,regress更优于inv,体现在当x的元素存在缺陷时。举例:
x =

     1     0     0     4
     1     0     0     3
     1     0     0     5
     1     0     0     8
y =

     3
     4
     3
     9
[ b , bint , r , rint , stats ]=regress ( y , x )
Warning: X is rank deficient to within machine precision.
b =
   -0.9643
         0
         0
    1.1429
bint =
  -12.0010   10.0724
         0         0
         0         0
   -0.9245    3.2102
r =
   -0.6071
    1.5357
   -1.7500
    0.8214


rint =
   -9.2316    8.0173
   -1.9141    4.9855
   -7.4997    3.9997
    0.2465    1.3964


stats =
    0.7388    5.6575    0.1405    3.2321
4楼2014-02-26 08:43:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 kk1424 的主题更新
不应助 确定回帖应助 (注意:应助才可能被奖励,但不允许灌水,必须填写15个字符以上)
信息提示
请填处理意见