全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SPSS论坛
3969 5
2009-02-13
主要是正弦函数的周期和初始角如何确定?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2009-2-13 08:23:00

我没有做过这种非线性的回归。但按照一般思路,所有的非线性都能够近似转化为线性。那么你可以先线性变换一下,找出近似解,然后以这个解作为初始角吧。

而且你这个函数看着不是很复杂,是不是能够直接得出解析解啊?

很久没有解过数学题了,也许仅仅是胡说。。。

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2009-2-13 09:21:00

我用Matlab解了解,可以,下面是代码

函数文件:

function F = myfun(x,xdata)
F = x(1)+x(2)*xdata+x(3).*sin(x(4).*xdata+x(5));
脚本文件:

xdata=[];% 数据 x的值

ydata=[];% 数据 y的值

x0=ones(5,1); % 初始猜测值

x = lsqcurvefit(@myfun,x0,xdata,ydata)

下面是我的试例:

 xdata = 0:.1:1;

ydata = xdata + sin(xdata);

x = lsqcurvefit(@myfun;x0,xdata,ydata);

运行结果

Optimization terminated: first-order optimality less than OPTIONS.TolFun,
 and no negative/zero curvature detected in trust region model.

x =

   -0.0000
    1.0000
    1.0000
    1.0000
    0.0000

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2009-2-13 09:38:00

MODEL PROGRAM  a=0.1 b=0.1 c=0.1 d=0.1 e=0.1.
COMPUTE  PRED_=a+b*xdata+c*SIN(d*xdata+e).
NLR xdata
  /OUTFILE='C:\Users\AppData\Local\Temp\spss1960\SPSSFNLR.TMP'
  /PRED PRED_
  /CRITERIA SSCONVERGENCE 1E-8 PCON 1E-8.

你把这一段代码复制到 file->new->syntex中 然后运行就可以了

其中第一句 a b c d e 的初始值你可以自己改

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2009-8-19 22:17:45
xue xi le ,he he
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2009-8-20 06:27:54
其实像这类的拟合问题,不必非得用SPSS来做啊。Matlab,Mathematica,Origin,1stOpt等,应该都可以很好地完成。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群