小兵案例实践:用SPSS做一个简单的非线性回归

原创 数据小兵  2020-11-10 12:07  阅读 3,074 次
数据小兵成长记

以前写过一篇《用SPSS做简单曲线回归》的案例文章,主要介绍SPSS曲线回归的应用。

当我们的非线性模型更加复杂,比如要考虑更多因素,常见模型解决不了问题,那么可能就需要继续学习和使用非线性回归方法,SPSS也提供了强大的【非线性】回归菜单。

鉴于非线性回归异常复杂和很难学,今天小兵选一个小入口,以考察一个因素为例,简要演示SPSS非线性回归过程。

01

案例数据

欲考察培训时长与成长指数间的关系。收集到以下数据,x为培训时长,y为成长指数,共15个个案。

先做散点图进行观察,点的分布走向类似于对数函数或指数函数曲线,假设我们是该领域的专业人士,经过多方查证最终发现培训时长和成长指数是对数函数关系,现在我们希望拟合出这个函数关系。

02

非线性回归菜单操作

【分析】→【回归】→【非线性】,打开主对话框:

因变量:y

模型表达式:输入a+b*ln(x)

点开【参数】对话框,将上面录入的经验函数表达式中的两个参数a和b进行正式的命名和设定开始值,大家仔细研究一下对数函数,对这两个参数的大体取值范围进行评估,由于样本量少,本例暂时设定a开始值为1,b开始值为-1,未来具体是多少让模型自动帮我们迭代求解最佳参数结果。

关于非线性模型表达式和参数设置,是非线性回归的难点,不是三两句话能讲清楚,需要每位用户根据自己的研究项目、参考资料做出合理的设定。

以上仅是案例演示,不讨论其具体科学性,能说明问题即可。

点开【约束】对话框,

给a和b两个参数设定一个明确的值域范围,结合对数函数与散点图,本例设定a≥0,b≤0。这也是非线性会的一个知识点,合理的值域让迭代计算更快,当然不合理的设定也会导致模型得不到结果。

其他各参数就当没看见,基本都是统计专家要去研究的,我们用户不管了,直接默认软件设定即,执行。

03

结果解读

前面咱们约定了y与x的关系是:y=a+b*ln(x)。那么非线性回归的过程将会为我们计算得到表达式中的两个未知参数a和b。

a和b最终取值多少呢?看参数计算的迭代历史记录表格与参数估算表格。

经过6次迭代计算,软件帮我们搞定了。最终a=71.754,b=-15.815。因此y与x的确切关系为:

y=71.754-15.815*ln(x)

大家有没有发现这个结果和前面《用SPSS做简单曲线回归》文章的结果是一致的。

非线性的函数关系明确了,但是还有一个问题,这个函数关系是否可靠,有没有统计学意义?如何回答这个问题,看方差分析表格。

直接看R方=0.960,哦尚不错。模型可以解释因变量96%的变化,模型的解释能力较高,拟合较好。

本文完

文/图=数据小兵

 

◢ 为你推荐以下文章 ◣

用SPSS做简单曲线回归
SPSS联合诊断的ROC曲线分析
判断变量之间是否存在线性关系
SPSS案例:多重线性回归分析
用SPSS线性回归实现中介效应分析
如何用SPSS岭回归解决共线性问题?

 

《SPSS统计分析:快速入门与实践提高》

视频地址:

https://study.163.com/course/introduction/1003945001.htm?share=1&shareId=1149679450

本文地址:http://www.datasoldier.net/archives/2578
版权声明:本文为原创文章,版权归 数据小兵 所有,欢迎分享本文,转载请保留出处!
视频课程《SPSS统计分析:从入门到实践提高》
欢迎订阅SPSS训练营微信公众号

评论已关闭!