线性回归的首要满足条件是因变量与自变量之间呈线性关系,之后的拟合算法也是基于此,但是如果碰到因变量与自变量呈非线性关系的话,就需要使用非线性回归进行分析。

SPSS中的非线性回归有两个过程可以调用,一个是分析—回归—曲线估计,另一个是分析—回归—非线性,两种过程的思路不同,这也是非线性回归的两种分析方法,前者是通过变量转换,将曲线线性化,再使用线性回归进行拟合;后者则是直接按照非线性模型进行拟合。

我们按照两种方法分别拟合同一组数据,将结果进行比较。

分析—回归—曲线估计


变量转换的方法简单易行,在某些情况下是首选,但是只能拟合比较简单的(选项中有的)非线性关系,并且该方法存在一定的缺陷,例如

1.通过变量转换使用最小二乘法拟合的结果,再变换回原值之后不一定是最优解,并且变量转换也可能会改变残差的分布和独立性等性质。
2.曲线关系复杂时,无法通过变量转换进行直线化
3.曲线直线化之后,只能通过最小二乘法进行拟合,其他拟合方法无法实现

基于以上问题,非线性回归模型可以很好的解决,它和线性回归模型一样,也提出一个基本模型框架,所不同的是模型中的期望函数可以为任意形式,甚至没有表达式,在参数估计上,由于是曲线,无法直接使用最小二乘法进行估计,需要使用高斯-牛顿法进行估计,这一方法比较依赖于初始值的设定。

下面我们来直接按照非线性模型进行拟合,看看结果如何

分析—回归—非线性


以上用了两种方差进行拟合,从决定系数来看似乎非线性回归更好一点,但是要注意的是,曲线回归计算出的决定系数是变量转换之后的,并不一定能代表变换之前的变异解释程度,这也说明二者的决定系数不一定可比。我们可以通过两种方法计算出的预测值与残差图进行比较来判断优劣,首先将相关结果保存为变量,再做图


SPSS数据分析—非线性回归的更多相关文章

  1. SPSS数据分析方法不知道如何选择

      一提到数学,高等数学,线性代数,概率论与数理统计,数值分析,空间解析几何这些数学课程,头疼呀.作为文科生,遇见这些课程时,通常都是各种寻求帮助,班上有位宅男数学很厉害,各种被女生‘围观’,这数学为 ...

  2. 快速掌握SPSS数据分析

      SPSS难吗?无非就是数据类型的区别后,就能理解应该用什么样的分析方法,对应着分析方法无非是找一些参考资料进行即可.甚至在线网页SPSS软件直接可以将数据分析结果指标人工智能地分析出来,这有多难呢 ...

  3. SPSS数据分析—生存分析

    生存分析是对生存时间进行统计分析的一种技术,所谓生存时间,就是指从某一时间点起到所关心的事件发生的这段时间.这里的时间不一定就是钟表日历上的时间,也有可能是其他的度量单位,比如长度单位等. 生存时间有 ...

  4. SPSS数据分析—多维尺度分析

    在市场研究中,有一种分析是研究消费者态度或偏好,收集的数据是某些对象的评分数据,这些评分数据可以看做是对象间相似性或差异性的表现,也就是一种距离,距离近的差异性小,距离远的差异性大.而我们的分析目的也 ...

  5. SPSS数据分析—分段回归

    在SPSS非线性回归过程中,我们讲到了损失函数按钮可以自定义损失函数,但是还有一个约束按钮没有讲到,该按钮的功能是对自 定义的损失函数的参数设定条件,这些条件通常是由逻辑表达式组成,这就使得损失函数具 ...

  6. 交完论文才发现spss数据分析做错了

    上周,终于把毕业论文交给导师了.然而,今天导师却邮件我,叫我到他办公室谈谈.具体是谈什么呢?我百思不得其解:对论文几次大修小修后,重复率已经低于学校的上限了,论文结构也很完整,我已经在做答辩的ppt了 ...

  7. SPSS数据分析—广义线性混合模型

    广义线性混合模型是目前线性模型范畴内最为完备的模型框架,它是广义线性模型的进一步延伸,进一步突破适用条件,因变量既 可以非正态,也可以非独立,由于其最为复杂,因此SPSS对其输出结果采用模型格式,而不 ...

  8. SPSS数据分析—广义线性模型

    我们前面介绍的一般线性模型.Logistic回归模型.对数线性模型.Poisson回归模型等,实际上均属于广义线性模型的范畴,广义 线性模型包含的范围非常广泛,原因在于其对于因变量.因变量的概率分布等 ...

  9. SPSS数据分析—对数线性模型

    我们之前讲Logistic回归模型的时候说过,分类数据在使用卡方检验的时候,当分类过多或者每个类别的水平数过多时,单元格会划分的非常细,有可能会导致大量单元格频数很小甚至为0,并且卡方检验虽然可以分析 ...

随机推荐

  1. Class类

    package com.imooc.reflect; public class ClassDemo1 { public static void main(String[] args) { //Foo的 ...

  2. Range对象理解,浏览器兼容性,获取鼠标光标位置

    一.关于浏览器的兼容性 目前主要有3种关于range的类似的对象,分别是W3C range 对象,Mozzlia selection ,ie TextRange 关于这三种的区别,请查看文档 http ...

  3. iOS10权限声明国际化

    iOS 10要求用户声明隐私访问用途,而且不能为空,否则将会被拒.被拒邮件如下: 解决办法是在Info.plist中添加Privacy - Camera Usage Description和Priva ...

  4. for循环和迭代

    迭代的一个时间复杂度最大就是n^2,而在for循环和迭代相结合的一个情况下则是一个排序组合,不再是一个简单n^2,而是阶乘n!.

  5. 本地blast用法

    格式化数据库: makeblastdb -in db.fasta -dbtype prot -parse_seqids -out dbname 参数说明: -in:待格式化的序列文件 -dbtype: ...

  6. cat常用参数详解

    cat常用参数详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 最近,我的一个朋友对linux特别感兴趣,于是我觉得每天交给他一个命令的使用,这样一个月下来也会使用30个命令,基 ...

  7. MVC筛选自定义属性下拉表

    MVC筛选自定义属性下拉表 string CompanyId = ""; CompanyId = ManageProvider.Provider.Current().Company ...

  8. MVC(二)

    所谓EF延迟加载,就是使用Lamabda或Linq查询数据时,EF并不会将数据直接查询出来,而是在用到的这个查询结果的时候才会加载到内存中.延迟加载也可以理解成 按需加载,顾名思义,就是按照所需的数据 ...

  9. mysql++的release版本当机的问题

    今天用mysql++的release写例子,总是当机,仔细查了一下,发现在编mysqlpp库的时候,代码生成设置成了MDD,改成MD就好了.

  10. openDatabase() chrome vivaldi Stylish

    located at /Users/ruili/Library/Application Support/Vivaldi/Default/databases/ Databases.db contains ...