作者所学习的是同济大学钱志坚老师开设的Spss统计分析应用(122257),主要是利用IBM spss数据分析来进行学习。第一节课由于并没有进行课程的正式学习,于是从第二节课开始记录。每周上一节课,最终进行测试。所有课程学习中所用到的演示用例及课堂作业都会最后分享到百度云。
本课程学习记录仅可用于交流学习,抵制一切版权侵犯与商用所用!违者必究!最终解释权归钱志坚老师所有。
授课老师简介:
目录
第二周
首先介绍了课程学习的顺序和步骤,明确了本门课程的教学思路。
收集数据的目的,就是让我们在分析数据后,进行合理地预测或找出几个事物之间的数学联系。如“受教育水平高的人收入比受教育水平低的人收入要高”,你如何评价这句话?如果不想草率地下结论,那就需要大量的数据来进行比对和分析,避免幸存者偏差和偶然性。同时还要注意存在的潜在变量:如上述陈述,我们都知道受教育水平较高的人家境一般较好。
1.1 统计方法的特点
- 一切由数据说话!
- 统计分析的结果常常也会出错,而且这种错误并非方法错误,分析结论也会告诉你出错的机会是多少。(如下雨概率,并不能绝对预测)
- 统计方法研究和揭示的是现象之间的数量关系表现层面上的相关关系,但不一定是因果关系(因为可能存在潜在变量,如吸烟和肺癌的关系)。
- 使用归纳推理,即选取适合观察结果的假设,因此统计推理是归纳推理。
1.2 随机现象及随机规律性
随机实验:每次实验发生什么结果无法预知。
随机现象:与随机实验相伴的现象。
比如说掷骰子,每次都有可能出现1-6之间的数字,而且每次骰子稳定前我们都无法预知本次的数值。如果重复实验,结果可以各不相同,事前无法预知。
不确定性和随机性正是统计研究对象最重要的特性。近代统计学大师C.R.Rao曾说:统计学就是围绕不确定性的驾驭而发展起来的,要在看似随机的现象中归纳出规律性的结论。
1.3 统计学中的基本概念
个体与变量:个体是统计中每个研究的对象,变量则是人们对个体关心的特征。
总体和样本:总体是研究对象的全体,而样本是总体的一部分,是部分个体的特征的观察值。我们要做的就是从样本中提取整体的信息和特征。
在统计中,一般要求样本要具有这样的性质:总体中每个个体都有同等机会被包含在样本中,称这样的样本为随机样本。
2.1 数据的简单描述
在本章节中将学习利用简单图形和数据展示来进行数据分析,对数据进行通俗易懂的描述。
2.2 简单随机抽样
抽样有放回抽样和无放回抽样。即每次抽样完是否将个体放回总体的区别。
简单随机抽样相当于有放回抽样。
2.3 数据的简单整理
面对大量杂乱无章的数据,如何找出有用信息是一个重要问题。
1.统计量:任何样本的函数,只要不包含未知函数,就叫统计量。引入统计量后,可以将一大堆数据加工成若干个较为简单又较为本质的量,以便于来推测总体中的未知值。如平均值,最大值,最小值都叫统计量。例子如下:
2.统计图形:对于实际问题,比较直观的方法就是将冗杂的数据用图来表示,主要使用的是直方图,频数密度分布图和茎叶图。
直方图:就是将数据分类到不同区间,以此清晰直观地比较不同区间的高低。
频数密度分布图:概念如下:
茎叶图:优点是可以看出样本的重心在何处,没有原始数据信息的损失,可以随时添加数据。示例如:
而茎叶图的缺点就是对于观测数据有一定要求,适用于一些简单场合,不像前两类图这么通用。
盒形图:
2.4 数据的概括
刻画数据中心位置的数据特征
中位数不易受极端值影响,比较稳健,但中位数不能像均值那样得到样本的和,只能作为中间值来看待,对于整体情况没有太大参考意义。
众数:样本中出现次数最多的数。反映的信息主要在定性变量上。
上下四分位数:位于数据上下四分之一处(数据从小到大排列)的数。也称第三四分位数Q3(靠近数目较大的一方)和第一四分位数Q1(靠近数目较小的一方),或75百分位数和25百分位数。
IQR=Q3-Q1 表示数据中间段的长度。IQR越大表示中间一段越分散。
刻画数据分散程度的数据特征
分位点:迅速找到当前数值在整个样本的大致位置。
第四周
第三周由于中秋放假故跳过一节课程,直接来到第四周的学习进程。今天这节课主要学习随机实验与随机事件等相关内容。
某个事件A的发生概率介于【0-1】.等于1的事件不一定发生,等于0的事件不一定不发生。
随机变量(rv):随机变量代表要观测的变量,分为离散型和连续型,离散型变量的分布用概率函数来表示,其中连续型随机变量每一点取到的概率都为0,表示连续型随机变量的取值趋势要用密度函数来表示。
3.1 常见离散型随机变量
- 0-1分布(伯努利分布):一次事件只有成功与不成功,成功记为1,不成功记为0.是n=1的二项分布。B~(1,p)
- 二项分布:n个独立的是/非试验中成功的次数的离散概率分布,其中每次试验的成功概率为p。 这样的单次成功/失败试验又称为伯努利试验。B~(n,p)
- 泊松分布:泊松分布的参数λ是单位时间(或单位面积)内随机事件的平均发生次数。 泊松分布适合于描述单位时间内随机事件发生的次数。概率函数:
在实际事例中,当一个随机事件,例如某电话交换台收到的呼叫、来到某公共汽车站的乘客、某放射性物质发射出的粒子、显微镜下某区域中的白血球等等,以固定的平均瞬时速率λ(或称密度)随机且独立地出现时,那么这个事件在单位时间(面积或体积)内出现的次数或个数就近似地服从泊松分布P(λ)。
3.2 常见连续型随机变量
- 均匀分布:X~(a,b),
- 指数分布:概率密度:
,X∼E(θ),指数分布的特点为无记忆性,如一个人从30活到60和从出生活到30的概率相等。
- 正态分布(最重要) :
3.3 常见的概率分布
- 卡方分布:若n个相互独立的随机变量ξ₁,ξ₂,...,ξn ,均服从标准正态分布(也称独立同分布于标准正态分布),则这n个服从标准正态分布的随机变量的平方和构成一新的随机变量,其分布规律称为卡方分布。
- t分布:
- F分布:
3.4 IBM SPSS实操练习
首先下载好IBM SPSS 20,SPSS看起来与excel比较相近,左下角分为数据视图和变量视图两个sheet。
SPSS文件后缀名为.sav,在数据视图界面,上方横坐标为变量名称,在变量视图来定义变量相关参数。SPSS与excel交互性很好,可以直接将excel文件copy进入SPSS。
在变量视图中有变量宽度和小数,是指变量数值的位数和是否带小数(其中小数点也算一位),如宽度8,小数2,则表示——5位数.2位数。
标签用于快速识别变量,如男生定为“1”,女生定为“2”,这样导入数据时可以快速导入男生还是女生,如果觉得数值查看不方便,可以在数据视图上方点击“值标签”来进行换算显示。
今天主要学习的是数据视图——分析菜单——描述统计——频率、描述、探索。
频率主要用于分析离散型变量,可以快速计算变量的统计量,同时导出某变量的频率表格。当然,频率也可以用于连续型变量的计算,其中“偏度”和“峰度”都是与标准正态分布进行对比。在图表中可以选择显示图表样式。
如图还可以生成频数表,获得每一个数据在总样本中的位置百分比。
描述:简单说出变量中你感兴趣的特征值,如最大值最小值方差等,通过简单表格反馈给你。还可以对数据进行检验和作图。
探索:指对变量进行探索性分析,可以设置变量因子和因变量。
比如将年龄添加为因子,头围添加为因变量,首先可以得到案例处理摘要。
在探索性分析中还可以看到变量的描述,可以得到头围以年龄为分组的均值、置信区间、各特征量等。
再往下还会显示茎叶图,将数据清晰直接地展示,方块字是由于汉字无法正确显示,可以copy到excel中就可以显示了。从茎叶图可以总结样本数据集中分布在何处,以及数据大致分布在什么区间等信息。还可以横向比较不同年龄头围的发展趋势,得出更多结论。
最后探索性分析还会反馈给使用者盒形图(箱形图),可以方便地观察数据的四分位数大致处在什么位置,其中在盒子之外的横线是指横线到盒子的距离是盒子本身长度的1.5倍,如果超出横线的数据会被特别标出(显示的是数据的编号而不是数据本身)。
第五周
5.1 抽样分布
- 卡方分布
- t分布
- F分布
详情可见3.3 常见的概率分布。
5.2 正态总体下的抽样分布
注意:除正态总体等少数个例外,其他都需要利用极限分布近似变成正态分布。
由上定理可以引出点估计的方法。
5.3 点估计方法
点估计的方法:1.矩估计 2.极大似然法 3.最小二乘法 4. 贝叶斯方法...
在这里我们主要学习前两种方法:
1.矩估计方法
矩估计的特点是“替换”,也就是样本矩代替同阶总体矩,好处是不需要假设总体分布有特定分布类型。
2.极大似然法
本质上极大似然法和矩估计法都是为了近似求得总体分布近似成正态分布时的期望和方差。
5.4 置信区间
前面我们说的点估计方法,是为了得到我们未知参数的近似值,但并不能知道近似值的误差范围,所以需要置信区间来评估。
注意:
- 我们 一般根据不同问题,取置信区间为0.9,0.95,0.99。
- 有时我们根据实际问题,可能只需要置信区间的单边界限,比如上限或者下限,这时候只需要对上式取单边就可以了。
6.1 假设检验
来到spss数据分析实操,在分析-比较均值可以看到各种样本T检验。
1.单样本检验:指的是对单一变量进行检验,首先输入检测值作为你的初始假设,H0:假设身高均值为100cm。是正向假设,也就是例如假设身高的均值是100cm,在选项中选择好置信区间后,可以看到以下界面:
上面程序输出的结果表示:1.身高的真实均值是109.89cm,然后对我们假定的检验值进行t检验,我们要重点关注的值是sig.(两侧),这个反映的是我们样本数据的显著性概率,由于t值为16.251的情况下,p值(也就是显著性概率)几乎为0,说明原假设不可信,我们要拒绝原假设,所以我们得出结论:身高均值并不是100cm。
注意一个细节,此时的置信区间是在原点两侧的置信区间,我们要加上我们的检验值才是真正的样本置信区间,基本上偏离置信区间的话,都不能通过检验,也就是p值(sig(两侧))会特别小。
2.独立样本t检验:对于同一组数据来说,可能是来自两个不同的分组,比如说我分为甲乙两组,用不同饲料喂养小白鼠,将数据放在一起,探究小白鼠体重增加是否有差异。这时候就要用到独立样本检验。
以探究男女身高是否有差异为例,可以看到,这次spss相当于做了两个检验,首先检验两个分组的方差差异是否巨大,可以看到第一个p值是0.601,相当于可以认为方差相等,于是我们就继续往后看,接下来才到了均值方程的t检验,可以看到p值很大,达到了0.994,说明原假设可以成立,也就是男女身高几乎无差异。
3.配对样本检验:应用在两对数据是成对的,例如:
在上述实验中,每次试验都将电子杀虫和人诱杀虫的结果进行对比,这种情况就叫配对样本。
使用过程如下:
可以看到首先spss对两个数据都进行了一些统计量的计算,我的var2表示电子诱杀,var3是人类诱杀。可以看到均值相差很大,结果应该是拒绝原假设,我们继续往下看。发现果然,sig.(两侧)非常小,那么说明电子诱杀和人诱杀具有明显差异。
第七周
由于第六周国庆放假,所以直接来到了第七周的课程,今天主要学习方差分析的相关知识。
7.1 问题及假定
很多时候我们观察数据,不只是观察其均值,数据的稳定性,也就是方差也十分重要。
因子和水平:
X:实验结果的观察值。
因子:实验中要考虑的因素,如身高,温度等。
水平:因子在实验中所处的状态称为水平,常用 A 1 , A 2 ,…, A k ; B 1 , B 2 ,…, B k 表示。如某个实验的时间有三个水平:5min,10min,15min。
模型假设前提:观察数据==总体平均+随机偏差。
其中误差满足三个假设:
- 正态性
- 同方差
- 独立性
7.2 单因素方差分析
单因素方差分析就是说检验某一因素在不同水平下的差异,来确定这个因素带来的误差是否过大。
F检验:F检验代表是由A产生的误差,去比上随机误差所产生的总误差。F检验很小的话,说明无法拒绝原假设,因为说明A与随机误差比起来微不足道。如果F很大,说明由A因素不同水平所带来的误差太大,导致我们要拒绝原假设。
在spss程序中,在分析-比较均值-单因素anova,就是说的方差分析(analysis of variance)。
我根据一个例子来说明方差分析anova的作用:我想探究不同年份可以看到在spss中会选择因变量的值和因子,我们这的因子就是不同水平,所以可以直接查看结果:其中组间的差异就是方差分析的意义所在,可以看到显著性非常低,那么说明组间差异十分巨大。
通过两两比较可以得到更精确的结果,可以知道每一组之间差异有多大,是哪一组破坏了整体的稳定性,哪一些数据差不多,可以放入同一子集等等。 一般使用S-N-K检验。
7.3 双因素方差分析
双因素方差分析又分为有无交互作用。
如以上就是无交互作用的双因素分析。
接下来再看看一个有交互作用的情况:
有交互作用就是说,A中最好的水平和B最好的水平合在一起不一定是最好的,反而可能不如某一特定组合。
spss分析的操作是在一般线性模型中找到单变量模型,进行方差的单变量分析。注意在无交互作用的情况下不要建立两因素交互的因子,否则会导致自由度不够而结果出问题。
在做两两比较之前,也要先看看因素单独的p值,如果p值很大就没有做两两比较的必要了。
使用spss进行单因素方差分析:
可以在分析-均值检验-anova单因素中进行分析,可以看到,显著性很低的时候说明要拒绝原假设,同时还可以进行组间比较,可以看到spss将不同数据分为不同的子集,说明哪些与哪些组之间存在较大误差。
双因素分析:
以此题为例,首先我们在拿到数据后无法判断是否存在交互关系,首先在分析-一般线性模型-单变量中添加,
同时在模型中选择:
这样一个单变量模型就建立好了(目前假定没有交互关系)。当然你也可以将他们两个选为交互效应,然后就可以开始检验了:
结果如上所示,我们可以看到淬火温度的显著性显然非常低,说明淬火温度会对结果产生较大误差,而等温槽温度的显著性较高,说明对最终结果的误差贡献度很小,可以不考虑。在这之后我们可以选择淬火温度进行两两比较。
可以看到1210明显差异于其他两组,所以尽量选择其他两组进行实际应用。这样一组双因素方差分析就完成了。
添加了交互性检验的结果如下:
可以看到温度和浓度的交互性分析显著性值很高,说明并不存在明显的交互性作用,可以单独分析。这样我们就完成了完整的方差分析的操作流程。
7.4 非正态总体检验(非参数检验——卡方检验)
我们在处理数据的时候,总会遇到非正态分布的数据,这时候我们称这种数据为非正态分布,对此类数据进行非正态总体检验,可以有以下三种方法:
大样本,指n>=30时,使用t检验与正态检验相差不大,可以用单样本、独立样本、配对样本等t检验来进行。
接下来学习主要的非正态检验方法:卡方拟合优度检验。
产生上述情况可能有两种可能,一是孟德尔定律根本不成立,二是由于随机误差而影响实验结果。目前我们不知道花色的分布类型,但是我们知道花色是一种离散型分布,现在进行下述操作:
通过计算(A-T)²/T的方式,求出每一个花色的随机误差,也就是三组之间的差异。
其中k是分类数,其中F0为你假设的比例,所以 在n很大时,(A-T)²/T近似符合卡方分布,同时也代表拟合优度。卡方很大的话,说明拒绝原假设,也就是理论和实验相差较大。回到这个题,卡方大于1.44的概率是大于卡方>4.605(即α为0.05的分位点)的概率,卡方小,sig大,我们不能拒绝原假设,所以不能说明孟德尔定律是错误的。注意,在分类时,尽量不要出现某一类别数据数量<=5的情况。
利用spss来做的过程如下:
首先将数据进行如上处理,对于值进行标签标记。其中这个30,我们不能直接用,因为30是指在100株花里,总共有30株红色花,所以要进行加权处理,获得在整体的比例。
在数据——加权个案中:
这样就对变量进行了加权,之后分析——非参数检验——旧对话框——卡方:
可以看到下面有两个选项,其中期望值,默认按照所有类别期望1:1:1,所以这里修改一下,可以在值里输入1 2 1,也可以输入0.25 0.5 0.25. 在精确中可以选择方法。选择flower作为检验变量,然后点击确定:
可以看到,概率0.487,不能拒绝原假设,所以还是肯定原假设。如果你将数据调的越偏离1:2:1,将会发现概率越来越小,最终难以相信原假设。
再来看一个例子:
导入spss:
一定记得对数据进行加权!
这次默认所有类别相等:
最终得到的sig值非常小,所以拒绝原假设,也就是分娩并不是一个平均的过程,在一天的某个时段会集中分娩。
接下来来看卡方独立性检验:
检验独立的本质就是根据Pij=Pi*Pj的公式得来,通过n *Pi*Pj来得到独立分布下的理论值,与实际值比较得出是否独立。我们来看一个例子:
在spss里面,导入以上表格:
对qty进行加权,然后在分析——描述统计——交叉表中:
只要输入行和列,现在行是婆媳关系,列是住房条件。在统计量中,选择卡方,然后确定:
可以看到,最终得出的pearson卡方sig值为0.000,非常小,我们要拒绝原假设,也就是婆媳关系和住房条件之间并不是独立的,是存在相互关系的,这种检验方法的好处是可以处理非正态的,未知参数的问题。
第八周
本周主要来学习相关分析的知识。
8.1 相关分析
相关分析,及观测两个变量之间是否存在一定关系,如销售能力与工龄之间的关系,年龄和身高的关系。我们用来评判是否相关的因素就是利用样本相关系数r。
样本相关系数,是指样本中变量之间的线性相关程度。
在统计学中,皮尔逊积矩相关系数(Pearson product-moment correlation coefficient, PPMCC)用于度量两个变量X和Y之间的相关(线性相关),其值介于-1与1之间。在自然科学领域中,该系数广泛用于度量两个变量之间的相关程度。样本相关系数是指样本中变量之间的线性相关程度。
(引自百度百科)
r∈【-1,1】 ,r小于0是负相关,大于0是相关,如果绝对值大于0.8则表示二者高度正相关,越靠近于0则说明二者相关性越弱。相关系数并不稳健,改变样本中的某一点位置都可能大幅度改变相关系数。有相关性并不一定有因果关系!如打篮球打得好与身高有很高的相关系数,但并不能说明身高直接导致打篮球水平。
有关样本系数的检验,本文章借鉴了:(70条消息) 数学建模——相关系数(2)——假设检验_Mr.Duan_的博客-优快云博客_相关性假设检验
以上文章,特此标出。
在spss上操作:
在spss-图形-旧对话框-散点中,可以选择x轴和y轴变量,还可以进行命名等操作,然后就可以生成如上的散点图。
对两个变量进行相关性分析:
在分析-相关 -双变量中,可选择两个变量进行相关分析,目前相关系数我们只学了皮尔森(pearson)相关系数,一般都选择双侧检验(及偏大偏小都算偏离)。在选项中还可以选择显示均值,方差,协方差等系数。然后就可以生成如下表格:
上图表示的其实就是相关系数矩阵。从上图中我们能得到什么:
首先年龄和年龄的相关性是1,同理身高与身高也是,然后我们可以看到年龄与身高的相关性达到了0.716,可以说是具有显著正相关性了,而这里所提到的显著性,是指的基于H0:二者之间r=0这种假设,所以显著性非常小,我们要拒绝原假设,也就是说明二者之间存在线性关系。
我们可以看看多变量的相关性分析:
我想探究hemogl(血红蛋白)与这些元素的关系,我就通过双变量的方法建立了相关系数矩阵,从中就能很轻松的找出相关性最强的几个变量(相关系数矩阵只看半三角即可)。
8.2 一元线性回归
接下来我们学习一元线性(正态)回归的内容:
回归模型:回归是描述解释变量(自变量)与响应变量(因变量)之间的相关关系。
也就是说,解释变量是我们可以随意规定的,但响应变量是关于解释变量的映射,并不能确定。如调查身高与体重的关系:我们可以随意选择想要调查的身高范围,但却无法确定体重范围,因为同一身高的人体重差异可能会很大,这就是所说的随机误差(个体差异)。
如何找到数据之间的相关性:建立最小二乘回归直线。
对给定的数据集,回归直线与数据集拟合程度使用残差平方和(SSE)来度量的。残差即真实值减去估计值:
最小二乘法回归的性质:
1.残差平方和为0
2.SSE达到最小
3.LSE直线通过点( x̅, y)
现在用spss软件进行回归分析:
在分析——回归——线性中打开窗口。
可以看到如上界面,我现在想要探究年龄和身高是否呈线性关系,所以我将年龄设计为自变量,身高设计为因变量,其他的暂时不动。当然如果想只探究男性的身高和年龄关系,可以在选择变量中选择性别,然后设置个案标签。这里就不操作了。结果如下:
我们来分析以上结果:首先,在系数中我们通过B就可以得出了我们的回归方程y=6.292x+71.419.而sig值很小,也说明二者之间高度相关。
一般在回归分析前,我们可以通过图形——就对话框——散点图来看一下两个变量之间的关系,大致确定一下相关程度。
可以看到身高和年龄之间是一个明显的线性关系 ,我们可以去算一下他的相关系数:在分析——相关——双变量中得到:
可以看到有很强的相关性,说明二者是高度相关。
8.3 线性回归的假设性检验
接下来我们来探讨线性回归的检验与置信判断。
首先我们要知道检验中的一个重要变量:R²,它是指回归模型拟合程度的重要指标,也就是确定线性回归能够解释响应变量的变异程度。这也是回归分析的目的所在。
所以我们模型总误差在于以下两部分:随机误差和回归误差
而R²=SSR/SST=1-SSE/SST,所以R²越接近1,说明SSR占得成分越多,说明回归直线所解释的响应变量的变异比例越高,说明拟合精度越好。
特殊的,在一元回归中,我们发现:R²=r²,也就是回归系数的平方。
根据上述例子:
我们可以看到,对于回归分析中的R,正好对应了相关分析中的皮尔森系数r。
接下来学习对于回归的假设性检验:
我们原假设为b=0,也就是二者之间根本没有相关关系,回归模型无意义,而推翻原假设就说明回归模型有意义。
注意:回归系数估计不能代替假设检验
在假设检验中:
在一元回归中,F=t²
我们还是借上面身高与年龄的例子来看:
在anova(analysis of variance)方差分析表中,回归就是SSR,残差就是SSE,总计就是二者之和。df就是自由度(degree of freedom),均方就是用平方和/自由度,F就是用回归的均方/残差的均方。之后查表得到sig。我们的假设都是以0.05为限,而这里sig很明显远小于0.05,我们要拒绝原假设,也就是说二者之间有相关关系。这就是F回归检验。
而在系数表中,我们也可以看到spss进行了t检验,其sig值仍然指向同一结果。
8.4 线性回归的置信判断
通过检验后,我们只能说我们掌握了x与y之间存在相关性的证据,但这种效应有多大,我们求出来b估计的值,可是真值b又距离b估计有多远?这时候就应该采用置信区间来判断了。也就是说,我不通过b估计点估计来分析,而是通过区间分析。
我们以一个例子来判断:
我们已经知道了血压与年龄的线性回归模型。
其中E(y|x) 指的是y的平均值的区间估计,y-预测上下限是指y的预测值的置信区间。可以看到平均值的误差会小很多。
接下来我们通过spss来学习如何进行置信判断:
在分析——回归——线性中打开页面,在保存里面可以看到以下页面:
这里我们在预测值中选择未标准化,然后继续。
可以看到,在我的数据界面,新增了一行predict,也就是y的预测值。这是通过我们的回归模型创造出来的y的预测值。我们还想知道预测中单值和均值的置信区间是多少,那么我们就在之前保存界面中,在预测区间选择均值与单值,置信区间默认95%。
以第一行为例:
其中LICI和UICI代表的是对于单个y预测值如109.16968的置信区间,其中L代表low,U代表up。
而LMCI和UMCI代表的是所有年龄为6的人他们的身高的平均值的置信区间。
可以看到对单值检验置信区间就会大一些,均值置信区间就会小一些。
8.5 一些特殊的一元线性回归
1.比如y=a+bx^2+e,我们可以转换成y=a+bt+e,然后就可以应用于一元线性回归了。
在spss中,在转换——计算变量中:
我们可以设置新增变量为身高的平方(在spss中**代表平方),确定后就会在我们的数据中增加一列t,这时候就可以用y和t去进行线性回归分析了。
2.比如说y=ax^b,看似无法进行线性回归分析,但我们可以同时进行取对数,lny=lna+blnx。
这时候将y1=lny,a1=lna,x1=lnx,这样就得到了y1=a1+bx1。
想要完成这种转换可以在计算变量——函数组中的算术找到对数公式进行换算。
以上两种我们都称为可以线性化的回归模型。
当然,也可以在分析——回归中选择曲线估计,再选择是否需要对数型或二次型,通过图象和R²来选择最终的回归模型。
可以看到,有很多模型可以选择。
当然,用曲线去拟合不如用线性拟合完善,最好还是通过替换变量来达到线性回归。
第九周
9.1 logistic回归分析概述
本周主要来学习逻辑回归分析的相关应用,属于最流行的数据处理方法的其中之一,主要解决一般线性回归难以解决的问题。如以下问题:
接下来我们就用logistic转换方法来对概率进行处理,然后通过自变量和概率之间的关系得到自变量与因变量之间的关系。
其中,p是y=1的概率,也就是事件发生的概率,发生比本质上就是成功概率/失败概率。logit(p)的好处是取值非常广泛,区间范围在(-∞,∞),符合我们对于因变量的要求。
这样我们就反过来求出了事件发生的概率,而且理由十分充分。
9.2 logistic回归的估计方法
似然(likelihood)及概率 ,特别由自变量观测因变量的取值概率,与任何概率一样,似然也处于0-1之间,似然的自然对数形式(LL)被称为对数似然值,其取值在-∞到0之间。对数似然值是通过最大似然估计的迭代算法而获得。
检验一般分为以上三种,在本门课程学习中,我们一般取前两种检验来进行。
接下来我们就正式进入logistic回归分析的学习了。
9.3 Logistic回归分析
logistic回归一般分为以上两种回归,第一种二项logistic回归指的是y只取两种值,不管是0和1,还是1和2等等,当y要取两个以上的结果时,就要用多分变量。
先来看第一种,二项logistic回归:
二项logistic回归的因变量只出现两个值,一般用0和1表示,其中1表示事件发生概率。由上可知,线性函数对x的变化在p=0或1的时候特别不敏感,且非线性程度很高,这时候就引入logit变换来解决问题。
接下来我们通过spss来具体看看如何进行logistic回归分析。
在分析——回归中可以看到,有二元和多元的logistic回归,还有一些其他的回归,我们选择二元logistic回归。我以是否患冠心病为例来介绍。
可以看到因变量是是否有冠心病,协变量也就是我们这些自变量都加入之后,在方法部分选择向前:条件法,这是我们最常用的方法。在分类中,将不是连续型变量的变量划入分类协变量。然后在选项中:
选择分类图和hosmer-lemeshow拟合度。其中步进概率指的是进入的精度要求很高,比0.05还小才能引入变量,删除的意思是如果后续变量导致前面的变量变化超过0.1了,就要删除了。分类标准值我们一般都会选择0-1之间的0.5来作为,也就是0.6我就算为1,0.4我就算为0.如果想要对于数据进行预测分类,可以在保存中找到组成员勾选就可以了。我们现在点击生成结果:
起始他做了一个卡方显著性检验,主要检验我们模型整体是否有效,可以看到sig值很小,说明模型整体是有效的。
之后是模型汇总,可以看到R方和调整后的R方。
然后就是hosmer-lemeshow的检验列联表。
最终观测变量分类表。 也就是说,没患冠心病,我们诊断出来的有17位,而预测错误的是5个,而是冠心病的,我们认出来了12个,没认出来6个,最后回归结果对于判断结果的预测正确率可以达到72.5%
最终模型统计量。这里出现了X3——对应着高血脂史,说明在如此多的协变量中,高血脂史的有无成为了冠心病发病率的关键因素。
所以我们就得到了方程: ligit(p)=-1.917x3+0.875
可以通过上述预测方程来求得p(里面的常量和我上述写的不太一样,无碍)。
这个是依据预测概率的观测量分组表,可以看出每一个值算出来的p是分布在何处。
logistic分析的步骤:
在spss中可以很方便的通过标签的方法进行编码。如:
简单来说就是选取参照系, 这样简明扼要的体现,减少了分类变量的个数,讨论问题更清晰。
将x前面的系数B的指数形式:exp(B)称为危险强度。
也就是我们上述的综合预测正确率。
第十周 多元线性回归
多元线性回归主要解决响应变量对应多个自变量的情况,比如你的身高和年龄,体重等均有关系,而多元线性回归的本质与一元线性回归较为一致。
10.1 多元线性回归概述
例如以下例题:
可以看到R²还可以,可信。在多元线性回归中,R²与r²再也没有简单的关系了。
说明模型显著性可信。再来看单变量分析:
发现b2的sig值过大,我们没理由拒绝原假设,说明b2对最终响应变量影响不大。
10.2 多元线性回归检验
模型诊断是非常关键的一步,有很多同学虽然求出来模型非常准确,但是模型方向却错了,这无疑是本末倒置,模型毫无意义。我们建立模型首先要从模型显著性、解释变量是否显著、变量之间是否有共线性、回归模型是否背离基本假定等方面来评判模型。当然,初学阶段我们所用的自变量一般是独立变量。
回归模型假定要符合以上三原则,同时还要对残差进行判断。
可以看到,正常的残差图随着yi改变,方差并不会出现明显波动,会在一个相对稳定的范围内上下活动,而下面三个图各有各的问题。 最下面两个图表示x与y可能存在共线性关系。
我们通过一个例题来理解:
可以看到检测了糖尿病患者的几个指标。那么我们在引入变量的时候,就要注意引入的方式。
10.3 多元线性回归变量引入
先将一下常用多元回归引入变量的方式:
- 进入法,将所有方法全部选入,不会对于变量的显著性进行判断,有可能会引入过多变量。一般用于初步判断。
- 逐步法,可以认为是向前法和向后法的结合,首先利用向前法,引入两个变量,然后看看这两个变量是否有需要扔掉的,然后继续引入,重复上述过程,直到检查完所有变量,发现既不可舍去,也不可加入。
- 删除法,主要用于比对,可以将整块变量删除然后比对。一般是前面用逐步或者进入法分析后,点击下一张,然后可以选择删除法删除变量。
- 向前法,先将每一个变量单独和响应变量进行回归分析,然后去找F值最大,也就是最显著的变量,然后将其引入,然后再将剩下n-1个变量再单独加入,观察其显著性,当然前提是回归必须有效,直到引进变量发现不显著停止。
- 向后法,先将所有变量引入,先整个做一个回归分析,然后看所有变量中哪一个显著性最差,然后将其去掉,直到剩下的变量全部显著。
所有的方法都有步进(引入)要求,也有删除要求,我们用以上例题来做个例子。
可以看到有以上参数。
我们先用进入方法来检验一下:
可以发现R²0.601,不好不坏,而发现三酰甘油和总胆固醇没有通过检验,说明全部加入的方法并不好,那么我们换一种方法,用逐步法来确定,得到以下结果:
模型1表示第一次引入变量,模型2表示第二次引入或抛弃变量,之后没有做说明停掉了。
首先两次模型的sig值都足够小,说明模型可信有效。
接下来来看系数, 第一次引入了糖化血红蛋白,通过进入法我们也可以知道糖化血红蛋白确实是糖尿病的重要参数,而第二次引入了总胆固醇,也通过了检验。而且这两个变量共线性关系也不明显。接下来我们看R²。
可以看到模型1和2的拟合效果并不是特别好,这大概率因为胆固醇与血红蛋白都是作为人体长期指标存在,而血糖是瞬时变量,拟合效果较差也不影响。这也提醒我们以后做分析看到R²较低,应该检查一下是否找到了正确变量。
同时我们可以看到,进入法所得到的R²要好于逐步法,这是因为引入的变量越多,R²就会越大,即使变量与响应变量毫无关系,所以我们并不能用R²浅显的判断模型的优劣。
调整R²,对于多元回归来讲可以参考,调整自由度来重新计算R²,好处是调整的R²变化不会太明显。
可以看到每次还会反馈被排除的变量是哪些。
最终我们得到了以上回归方程。
当然我们还可以用其他方法来做,如先用进入法
在下一张,选择删除法,然后添加你想要删除的变量。为什么要这样做呢?有时候在回归分析时,我们肯定某几个变量一定对y有影响,可以先将这个变量用进入法加入,然后不确定的变量可以在下一张用逐步法加入,意义在于保护重要变量。
比如这个题,我想先引入所有变量,然后去掉胆固醇看看会有什么变化。删除法不是单独使用,一定是搭配进入等方法使用。
可以看到,spss分了三步进行引入和删除,通过三步之后,R²达到了0.598,同时变量都通过了t检验,模型通过了F检验,优于逐步法引入的模型。这告诉我们,逐步法不一定是最优解法,有时候根据自己判断和理解才是真正的最优分析。
10.4 多元线性回归残差分析
残差图是我们判断模型的重要指标,在分析——回归——线性中,找到绘制。
dependent就是自变量。
ZPRED中的Z表示标准化后,PRED表示predicted,标准化预测值。
ZRESID就是标准化残差的意思,一般以2sigma为界限,也就是落在(-2,2)。
将残差作为y,预测值作为x ,得到以下图:
我们看到大部分的点落在(-2,2)之间,同时方差波动不明显,说明等方差特性良好,而且越靠近中间的点越多,靠近边界的点越少,这很符合正态分布,说明满足基本要求。
第十二周
第十一周学习了卡方检验,本属于非参数检验,但由于和前面内容有些重复,我就将其并入第七章内容了(7.4 非正态总体检验(非参数检验——卡方检验))。第十二周我们来学习spss非参数检验中的剩余选项的使用。
12.1 二项式检验
二项式检验一般用于二项式分布,所谓二项式分布是指结果的分布只有两种可能性,类似于抛硬币只有正面和反面两种可能性。但又不同于抛硬币,抛硬币正面和反面的可能性差不多,二项分布两种分布结果的可能性可以有偏差。二项式检验主要用于检验两个二项式分布结果的差异性,差异性由最后的显著性值体现。
接下来用一个例子来展示二项式检验:
我想检验数据中男女的比例是不是1:1,我们在spss——分析——非参数检验——旧对话框——二项式检验中打开, 其中二分法可以由数据获取(如0和1),也可以自己找到某个点进行分割。其中检验比例,是以出现的第一个数据的值作为检验比例。例如比例为0.3,第一个出现的数据是男生,那么spss就认为男生占0.3来作为原假设。
可以看到最后可以得出显著性概率,确实男女比例基本接近1:1.
12.2 游程检验
游程是样本序列中连续出现的变量值的次数。游程检验又称单样本变量随机性检验,是对变量的变量值出现是否随机进行检验。例如10111001001,我们可以说游程数为7,也就是数值变化了7次。游程数太少或太多都说明一组数据并不完全随机。
通过spss进行游程检验如下:
首先我们输入一串随机的数据,原假设为:数据随机分布,然后在 spss——分析——非参数检验——旧对话框——游程检验中:
其中也可以设置割点方法,如通过中位数分类数值,也可以自己指定,这里就选择中位数。
可以看到检验值为1,而正好本次0和1都为7个,Z表示检验与正态分布相似度,runs数即为游程数=7,通过渐进显著性可以看到达到了0.781,说明近似可以认为这组数据是随机分布的。
游程检验还可以用来观察两组数据是否存在显著差异:
如我想探究以上两种行业的负债水平是否存在显著差异,所用的方法就是将工业企业和商业企业的负债率水平按序排列,如果这两个出现是无序的,说明没有显著差异,如果不是,说明有显著差异。
操作方法如下:
将数据分组后,在数据——排序个案中对负债率进行排序,这样第二列的group就同时进行排序,然后对group进行游程检验,看是否随机。
要注意,由于分组变量使用的1和2,且数据不平均,这里不要使用中位数进行分组,而是使用均值来分组较合适。
可以看到渐进性特别小,所以拒绝原假设,也就是说明两个行业的负债水平有显著差异。
12.3 单样本-KS检验
Kolmogorov-Smirnov test是一个有用的非参数(nonparmetric)假设检验,主要是用来检验一组样本是否来自于某个概率分布(one-sample K-S test),或者比较两组样本的分布是否相同(two-sample K-S test)。
在spss中,spss——分析——非参数检验——旧对话框——单样本-KS检验,可以检验某变量分布是不是符合常规(也就是正态分布),同时还可以检验诸如均匀分布,指数分布等。
可以看到会显示出KS检验值和渐进显著性等数据。
12.4 两个独立样本的非参数检验
在不知道独立样本非参数检验时可以用这种检验,如果已知样本正态分布,可以直接进行T检验来观察。
在——分析——非参数检验——旧对话框可以看到两个甚至多个独立样本的非参数检验,对于相关样本也有非参数检验。比如我要检验初中生男生和女生的身高是否有显著差异。
将分组变量和检验变量输入好,其中mann-whitney 检验在医学专业等领域有着广泛应用。
可以看到曼-惠特尼检验是对样本进行秩排序然后比较。 只有当两组数据秩和差不多时,才会认为两组数据均值等差不多,服从同种分布。
可以看到最终渐进显著性很小,所以拒绝原假设,也就是男生和女生身高确实存在差异。
第十三周
本周的进度来到了统计图形的生成和统计图表制作,一些简单的直方图和散点图我们已经会制作了,今天来学习进阶一点的统计图表制作。以及数据重编码和连续变量离散化。
13.1 分类汇总
如我已有上述数据,想要制作有关出生年份的人数分布图,或者制作饼表,我们可以看到上述数据中并没有年份,所以我们要增加一个变量。
在转换——计算变量中,找到:
此时将出生日期添加进入表达式即可(这里首先要将日期的数据类型改为日期类型,并确定好具体表达形式) 接下来就可以进行转换了。
这里就提取出了出生年份。接下来制作柱状表。首先我们要进行数据的分离和提取,这里用到数据——分类汇总:
分类汇总的作用是整合一些我们之前表中的数据,然后汇合后形成一张新表。(这里在保存选择创建一个新数据集)
在经过以上操作后,我们就将year变量和他的频数分到了一个新表如下:
这样的话,我们就很方便的在这个新表中进行画图操作了。
13.2 饼图绘制
接下来绘制条形图与饼图:
饼图:
在图形——旧对话框——饼图中,打开饼图,选择个案值(也可以选择个案值摘要):
设置好分区表征和分区标签后,运行:
这样就形成了我们想要的饼图,对于图上的标注,可以在spss中双击图形,在图标编辑器中右键,选择显示数值标签进行设置,可以显示数据百分比与具体的数据值。
13.3 条形图绘制
条形图——简单箱图:
接上个例题,在图形——旧对话框——条形图——简单箱图中:
可以选择摘要也可以选择变量值,进入后:
条的表征选择qty(均值),然后类别轴选择年份,即可生成:
条形图——堆积面积图:
这里用一个例题来表示:
可以看到这是学生不同心情下几次考试的各科目结果,想要直观的看每科考试每次测验的变化:
在图形——旧对话框——条形图——堆积面积图中:
选择个案组摘要,然后选择条的特征,这里选择分数的和(或者均值),类别轴选择科目,堆栈数就是你需要哪几次score堆在一起,这里是用trial来分类。
13.4 散点图绘制
散点图也是我们常用的绘制图像之一。
比如我想要探究各产地的汽车重量与马力的关系,根据已给数据:
在图形中旧对话框——散点/点状,由于我们本次绘制二维,选择简单分布即可:
其中设置标记就是分组的意思,选择产地。形成以下图形:
13.5 连线图绘制
在处理时间序列的数据时总是用连线图。
以股票预测走势图为例:
根据以上数据,在图形——旧对话框——线图中选择多线图:
一定记得选择各个变量的摘要!
然后将各变量设置好:
即可生成下图:
13.6 数据重编码
在面对大量数据时,我们为了快速获取变量特征,可以对变量进行重编码(重定义),例如对于身高,我通过四分位数将身高分为1.55m以下,1.55m——1.64m,和1.64m以上分为三组,我对身高进行重编码:
在分析——重编码为不同变量中:
在旧值和新值中,可以选择分类标准:
我们可以通过范围来定义新变量。这样就可以在数据集中添加新的一列,就是c_height。如果是选择重编码为相同变量,那就是直接替换原变量。
13.7 个案排秩
所谓秩,就是rank,指的是某一个值在所有数据中的排名,在转换——个案排秩中,就可以对譬如身高,我想对身高进行排序,操作如下:
这里选择将最高的设置为秩1,然后秩的类型可以选择按照什么作为排序的依据,点击确定后就可以生成一列新值——R身高,这就是身高的排序。
其中结的意思是,当两个数据重合时,你对于他们两个的大小如何分配,一般默认为均值打结。
13.8 拆分文件
在有时候,我们在进行数据分析时,只想对其中一组进行深入探究,如年龄为5的小孩子的身高情况,这时候就要用到数据——拆分文件。
比较组的意思是,虽然对年龄进行分组,但在进行统计分析时仍然在一张表格中呈现,而按组组织输出,则是将不同组别分表输出。
这里选择按组组织输出,然后在分析——描述统计——描述中,对于孩子的坐高进行分析:
可以看到,系统自动就为我们分好了年龄组别进行了输出,可以说是非常方便。
第十四周 聚类分析
本周主要来学习聚类分析的相关知识,俗话说,物以类聚人以群分,分类器的使用在当今社会广泛使用,聚类分析作为一种分类方法十分有效。
14.1 分类的依据
当只有一个分类指标时,分类较为容易,但有多个指标时,分类就变得不这么容易。
如,想要将中国城市分为若干类,可以从气候,降水,土地,光照等自然因素来分。也可以通过人均收入,发达程度等人为指标来划分。
由于不同的指标对于模型的影响程度不同,我们需要进行多元分类,聚类分析就是其中一种。
聚类分析最早起源于考古行业,同时又应用于昆虫分类,之后广泛应用于气候。生物等领域。
对于一批数据,人们既可以对变量(指标)进行分类(也就是列分类),称之为R型聚类。也可以对观测值(事件,样品)来进行分类(相当于行分类),称之为Q型聚类。
14.2 聚类的方法
聚类分析就是要找出具有相近程度的点或者类聚成一类,即距离。
这里的距离范围很广,重要的是你评价的指标是什么。
距离一定要满足以下四个要素:
14.3 常用距离
常用距离——明氏距离
minkowski距离:
当p=1时,称d为绝对距离(曼哈顿距离),当p=2时,称d为欧氏距离(Eudidem) ,当p→∞时,称之为切比雪夫距离。
明可夫斯基距离不是一种距离,而是一组距离的定义,它的不足之处在于
第一,距离的大小与观测单位之间有关。
第二,它没有考虑各分量的分布(期望、方差)可能是不同的。也没有考虑指标间的相关性。
改进:各指标测量值相差悬殊时,将数据标准化处理再计算距离。标准化后:
14.4 分类变量距离测度
1.简单匹配系数:是测度二分类变量的,是度量两个案例在所有的聚类变量上答案相同的情况出现的概率。
计算公式就是将两个个体不同时拥有某特征的情况找出来,计算其权重,简单匹配系数越小,说明二者的距离越短。下面是一个例子:
可以看到通过找出abcd的方式求出了张三与李四和王五的相近程度。
2.雅可比系数
是在简单匹配系数基础上进行的改进,也是度量二分类变量的。
改进就改进在取消了两个个体同时取0的情况,这样带来的变化就是增加了其他的权重,缺点就是编码方案会引起系数变化。 接下来是一个例子:
可以看到用括号内外的计算结果并不相同(注:第二行与第四行应改为张三和王五)
3.相似系数
形容两个变量相似程度的指标,主要用于变量聚类中。
当然,也可以用相关系数定义相似系数:
14.5 系统聚类法
系统聚类法判断类距离有下列几种方法:
14.6 聚类分析
接下来通过spss的实际操作展示,介绍聚类分析的具体做法:
spss中聚类功能常用的有两种:K-means快速聚类(迭代过程)和系统聚类。
1.K-means cluster原理:
接下来通过spss应用来详细讲解spss聚类分析过程:
1.K-means聚类分析:
在分析-分类中找到K-均值聚类分析:
可以看到,K-means的聚类分析方法需要我们预设参与分类的变量与最终产生的聚类数。在方法那里可以选择迭代与分类或是仅分类,仅分类的意思就是默认不迭代,只进行一次变量划分。在迭代按钮中可以选择最大迭代次数,在保存中可以选择将分类类别与到类中心点的距离返回到初始数据形成新的列。点击确定:
可以看到spss告诉了我们最初的分类以及每一类的聚类中心,和迭代结束后最终确定的聚类中心,以及spss还会返回每一次迭代所更改迭代中心的日志。最终我们得到了分类的结果,同时在原始数据中:
同时形成了新的两列,即所分到的类别与每个数据与该类聚类中心的距离(欧几里得距离)
2.系统聚类分析
同样在分析-分类中找到系统聚类分析:
可以看到系统聚类分析并不需要我们提供最终的聚类数,因为系统聚类分析最终都会归为一个大类,更多的作用体现在聚类的过程中。
在绘制中我们可以选择树状图,也就是每一次聚类的具体操作,点击确定后:
会形成如上图的树状图,我们可以看到慢慢的类别越来越少,所包含的变量也越来越多,系统聚类分析在我看来,更大的作用出现在对于变量聚类分析的初筛中,也就是大致确定变量的分布模式以及大致分为几类。
第十五周
本周主要学习因子分析与主成分分析。对于某一个指标,可能收几十上百个变量的影响,其中某些变量可能还会存在共线性等问题,存在很多的信息重复,直接用他们分析,不但模型复杂,还会带来较大误差。这时候我们希望利用较少的新变量,来降低变量数,最终获得几个主成分变量,其之间相互独立,同时能够较好的反映原变量的信息。
15.1 因子分析
因子分析主要有探索性因子分析与验证性因子分析两种,探索性因子分析的主要作用是简化数据和探索数据结构,验证性因子分析的作用是对数据结构的现在假设进行检验。
因子分析的主要方法是分解原始变量,将原始变量变成各因子的线性组合,可以解释原始变量的协方差。
因子个数可以人为指定,因子不是唯一的。相较主成分分析,因子分析多了“因子旋转”这一步。
因子分析的理想样本量为变量数的10-25倍,当然5-10倍也可以使用。
主成分分析严格来讲只是一种降维手段,其作用就是为了简化数据,主成分分析并不能作为研究结果。主成分分析是将原来的指标降维成几个独立的观测指标,把主成分变成原始变量的线性组合。可以解释原始变量的总方差。
主成分分析可以认为是因子分析的一个特例,主成分分析的结果是固定的,唯一的。
主成分分析对于样本量没有严格的要求。