一份SPSS回归分析与数据预处理的心得体会

关于SPSS数据预处理

拿到一份数据,或者在看到国内外某个学者的文章有想法而自己手里的数据刚好符合这个想法可以做时,在整理好数据后不要急于建模。一定要对数据做缺失值处理、异常值处理。在数据预处理的基础上再进一步建模,否则可能得到错误的结果。

心得1:数据预处理怎么做。

一是 缺失值的处理。我个人有几个看法:

数据样本量足够大,在删除缺失值样本的情况下不影响估计总体情况,可考虑删除缺失值;

二是数据样本量本身不大的情况下,可从以下两点考虑:1是采用缺失值替换,SPSS中具体操作为“转换”菜单下的“替换缺失值”功能,里面有5种替换的方法。若数据样本量不大,同质性比较强,可考虑总体均值替换方法,如数据来自不同的总体(如我做农户调研不同村的数据),可考虑以一个小总体的均值作为替换(如我以一个村的均值替换缺失值)。2是根据原始问卷结合客观实际自行推断估计一个缺失值的样本值,或者以一个类似家庭的值补充缺失值。

心得2:数据预处理第二点异常值的处理。

我大概学了两门统计软件SPSS和Stata,SPSS用的时间久些,熟悉一下,Stata最近才学,不是太熟。关于这点我结合着来说。关于异常值的处理可分为两点,一是怎么判定一个值是异常值,二是怎么去处理。

判定异常值的方法我个人认为常用的有两点:1是描述性统计分析,看均值、标准差和最大最小值。一般情况下,若标准差远远大于均值,可粗略判定数据存在异常值。2是通过做指标的箱图判定,箱图上加“*”的个案即为异常个案。

发现了异常值,接下来说怎么处理的问题。大概有三种方法:

(1)是正偏态分布数据取对数处理。我做农户微观实证研究,很多时候得到的数据(如收入)都有很大的异常值,数据呈正偏态分布,这种我一般是取对数处理数据。若原始数据中还有0,取对数ln(0)没意义,我就取ln(x+1)处理;

(2)是样本量足够大删除异常值样本;

(3)是从stata里学到的,对数据做结尾或者缩尾处理。这里的结尾处理其实就是同第二个方法,在样本量足够大的情况下删除首尾1%-5%的样本。缩尾指的是人为改变异常值大小。如有一组数据,均值为50,存在几个异常值,都是500多(我这么说有点夸张,大概是这个意思),缩尾处理就是将这几个500多的数据人为改为均值+3标准差左右数据大小,如改为100。

总结而言,我个人认为做数据变换的方式比较好,数据变换后再做图或描述性统计看数据分布情况,再剔除个别极端异常值。

关于SPSS回归分析

心得1:如何做好回归分析。

经过多次实战,以及看了N多视频,上了N多课,看了N多专业的书。我个人总结做回归的步奏如下:

(1)对数据进行预处理,替换缺失值和处理异常值;

(2)是将单个自变量分别与因变量做散点图和做回归,判定其趋势,并做好记录(尤其是系数正负号,要特别记录);

(3)是自变量和因变量一起做相关系数,看各个变量相关关系强弱,为下一步检验多重共线性做准备;

(4)是自变量多重共线性诊断。若变量存在多重共线性,可采用主成分回归,即先将存在多重共线性的变量做主成分分析合并为1个变量,然后再将合并成的新变量和其余自变量一起纳入模型做回归;

(5)是做残差图,看残差图分布是否均匀(一般在+-3个单位之间均匀分布就比较好);

(6)是报告相应结果。

心得2:不建议采用后向步进法处理变量多重共线性。

记得张文彤老师说过他有个同学做过一个研究,即采用后向步进法剔除变量的方式去做回归,得到的结果犯错的几率比较大。张老师也不建议用这个方法处理多重共线性。处理多重共线性比较好的方法是做主成分回归。

心得3:在报到回归结果时用未标准化的回归系数好,还是用标准化后的回归系数好。

我个人觉得这个问题仁者见仁智者见智,要看想表达什么。具体而言,如果想表达在其它条件不变的情况下,自变量X每变化1个单位,因变量变化多少个单位,这种情况用未标准化回归系数就好;如果想比较各个自变量对因变量影响的相对大小,即判断相对而言,哪个变量对因变量影响更大。这时需要消除量纲的影响,看标准化后的回归系数。

心得4:这是投稿一篇SSCI外审专家提出的意见。

我做的是无序多分类logistic回归模型。因变量分了5类,有一类个数比较多,达到300多,有1-2类个案比较少,只有30左右。专家提到了要做稳健性检验。这个用stata软件编程加一个robust即可解决问题。不知道在SPSS里面怎么做。我个人认为这是一个好问题的。不做稳健性检验模型可能受一些极端值的影响,结果不稳定。可能本来显著的变量剔除1-2个样本后就变得不显著了。所以做回归分析稳健性检验也比较重要.(Via:互联网分析沙龙)

原文发布于微信公众号 - 大数据挖掘DT数据分析(datadw)

原文发表时间:2015-04-13

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏数据小魔方

R语言构建层次分析模型不看一下吗~

AHP (Analytic Hierarchy Process)层次分析法是美国运筹学家Saaty教授于二十世纪80年代提出的一种实用的多方案或多目标的决策方法...

962
来自专栏机器之心

机器之心「GMIS 2017」嘉宾揭秘:LSTM之父Jürgen Schmidhuber

2017 全球机器智能峰会(GMIS 2017),让我们近距离接触「LSTM 之父」Jürgen Schmidhuber。 2017 全球机器智能峰会(GMIS...

2878
来自专栏机器之心

谷歌微软等科技巨头数据科学面试107道真题:你能答出多少?

选自Learndatasci 机器之心编译 参与:李泽南 来自 Glassdoor 的最新数据可以告诉我们各大科技公司最近在招聘面试时最喜欢向候选人提什么问题。...

2627
来自专栏前沿技墅

揭开计算机识别人类语言的神秘面纱——词向量

1193
来自专栏PPV课数据科学社区

连载 | 概率论与数理统计(2) – 随机变量概述

作者:Belter。专注于生物方向的数据分析,一位编程爱好者。关注Python, R和大数据。

591
来自专栏大数据挖掘DT机器学习

解析滴滴算法大赛---GBDT进行数据预测

按照前面文章的方法进行数据预测,完全不使用POI,天气,交通情况的数据,可以达到0.43的成绩。 不过如果想要获得更好的成绩,简单的预测方法显然无法满足要求了。...

94610
来自专栏大数据挖掘DT机器学习

一个贯穿图像处理与数据挖掘的永恒问题

作者: 左飞 著有《算法之美——隐匿在数据结构背后的原理(C++版)》 原文 http://blog.csdn.net/baimafujinji/articl...

2343
来自专栏新智元

【面试107问】谷歌等巨头机器学习面试题:从逻辑回归到智力测验

【新智元导读】很多人都想知道,谷歌、微软、Facebook 这样的顶级科技公司,在面试大数据机器学习工程师时会问些什么问题。可惜的是,这些公司的面试者事先都要签...

3877
来自专栏CVer

[计算机视觉] 入门学习资料

本文将介绍计算机视觉相关的经典书籍,顶级期刊/会议,在线学习课程,常用开源库和安利小工具等。 简介 计算机视觉(Computer Vision) 计算机视觉是...

89518
来自专栏CreateAMind

深入理解 RNN-神经图灵机(代码)

在写《深度学习与神经科学相遇》的过程中开始谈到了RNNs(Recurrent Neural Networks),我想很有必要暂停下来先对RNNs进行一些更深入的...

1213

扫码关注云+社区