数据分析软件介绍
数据分析是指用适当的统计分析方法对收集来的大量数据进行分析,提取有用信息和形成结论而对数据加以详细研究和概括总结的过程。这一过程也是质量管理体系的支持过程。在实用中,数据分析可帮助人们作出判断,以便采取适当行动。
数据分析的数学基础在20世纪早期就已确立,但直到计算机的出现才使得实际操作成为可能,并使得数据分析得以推广。数据分析是数学与计算机科学相结合的产物。
在统计学领域,有些人将数据分析划分为描述性统计分析、探索性数据分析以及验证性数据分析;其中,探索性数据分析侧重于在数据之中发现新的特征,而验证性数据分析则侧重于已有假设的证实或证伪。
探索性数据分析是指为了形成值得假设的检验而对数据进行分析的一种方法,是对传统统计学假设检验手段的补充。该方法由美国著名统计学家约翰·图基(John Tukey)命名。
定性数据分析又称为“定性资料分析”、“定性研究”或者“质性研究资料分析”,是指对诸如词语、照片、观察结果之类的非数值型数据(或者说资料)的分析。
Excel作为常用的分析工具,可以实现基本的分析工作,在商业智能领域Cognos、Style Intelligence、Microstrategy、Brio、BO和Oracle以及国内产品如Yonghong Z-Suite BI套件等。
我们在这里主要SPSS,R语言,Stata及Python四种软件进行介绍。
SPSS统计软件
SPSS是英文Statistical package for the social science 的缩写,翻译成汉语是社会学统计程序包,20世纪60年代末由美国斯坦福大学的三位研究生研制,1975年在芝加哥组建SPSS总部。SPSS系统特点是操作比较方便,统计方法比较齐全,绘制图形、表格较有方便,输出结果比较直观。SPSS是用FORTRAN语言编写而成。适合进行从事社会学调查中的数据分析处理。最新版为13.0版。网址:http://www.spss.com/。
SPSS原名社会科学统计软件包,现已改名为统计解决方案服务软件。是世界著名的统计分析软件之一。
20世纪60年代末,美国斯坦福大学的三位研究生研制开发了最早的统计分析软件SPSS,同时成立了SPSS公司,并于1975年在芝加哥组建了 SPSS总部。20世纪80年代以前,SPSS统计软件主要应用于企事业单位。1984年SPSS总部首先推出了世界第一套统计分析软件微机版本 SPSS/PC+,开创了SPSS微机系列产品的先河,从而确立了个人用户市场第一的地位。
同时SPSS公司推行本土化策略,目前已推出9个语种版本。SPSS/PC+的推出,极大地扩充了它的应用范围,使其能很快地应用于自然科学、技术科学、社会科学的各个领域,世界上许多有影响的报刊杂志纷纷就SPSS的自动统计绘图、数据深入分析、使用灵活方便、功能设计齐全等方面给予了高度的评价与称赞。目前已经在国内广泛流行起来。它使用Windows的窗口方式展示各种管理和分析数据方法的功能,使用对话框展示出各种功能选择项,只要是掌握一定的 Windows操作技能,粗通统计分析原理,就可以使用该软件进行各种数据分析,为实际工作服务。
SPSS for Windows是一个组合式软件包,目前已经开发出SPSS12版本,它集数据整理、分析功能于一身。用户可以根据实际需要和计算机的功能选择模块,以降低对系统硬盘容量的要求,有利于该软件的推广应用。SPSS的基本功能包括数据管理、统计分析、图表分析、输出管理等等。SPSS统计分析过程包括描述性统计、均值比较、一般线性模型、相关分析、回归分析、对数线性模型、聚类分析、数据简化、生存分析、时间序列分析、多重响应等几大类,每类中又分好几个统计过程,比如回归分析中又分线性回归分析、曲线估计、Logistic回归、Probit回归、加权估计、两阶段最小二乘法、非线性回归等多个统计过程,而且每个过程中又允许用户选择不同的方法及参数。SPSS也有专门的绘图系统,可以根据数据绘制各种统计图形和地图。
SPSS for Windows的分析结果清晰、直观、易学易用,而且可以直接读取EXCEL及DBF数据文件,现已推广到多种操作系统的计算机上,最新的版采用 DAA(Distributed Analysis Architecture,分布式分析系统),全面适应互联网,支持动态收集、分析数据和HTML格式报告,领先于诸多竞争对手。
方便易用是SPSS for Windows的主要优点,同时也是SPSS不够全面的原因所在。
R语言
R是统计领域广泛使用的诞生于1980年左右的S语言的一个分支。可以认为R是S语言的一种实现。而S语言是由AT&T贝尔实验室开发的一种用来进行数据探索、统计分析和作图的解释型语言。最初S语言的实现版本主要是S-PLUS。S-PLUS是一个商业软件,它基于S语言,并由MathSoft公司的统计科学部进一步完善。后来新西兰奥克兰大学的Robert Gentleman和Ross Ihaka及其他志愿人员开发了一个R系统。由“R开发核心团队”负责开发。R可以看作贝尔实验室(AT&T BellLaboratories)的RickBecker,JohnChambers和AllanWilks开发的S语言的一种实现。当然,S语言也是S-Plus的基础。所以,两者在程序语法上可以说是几乎一样的,可能只是在函数方面有细微差别,程序十分容易地就能移植到一程序中,而很多一的程序只要稍加修改也能运用于R。
R作为一种统计分析软件,是集统计分析与图形显示于一体的。它可以运行于UNIX,Windows和Macintosh的操作系统上,而且嵌入了一个非常方便实用的帮助系统,相比于其他统计分析软件,R还有以下特点:
1.R是自由软件。这意味着它是完全免费,开放源代码的。可以在它的网站及其镜像中下载任何有关的安装程序、源代码、程序包及其源代码、文档资料。标准的安装文件身自身就带有许多模块和内嵌统计函数,安装好后可以直接实现许多常用的统计功能。[2]
2.R是一种可编程的语言。作为一个开放的统计编程环境,语法通俗易懂,很容易学会和掌握语言的语法。而且学会之后,我们可以编制自己的函数来扩展现有的语言。这也就是为什么它的更新速度比一般统计软件,如,SPSS,SAS等快得多。大多数最新的统计方法和技术都可以在R中直接得到。[2]
3. 所有R的函数和数据集是保存在程序包里面的。只有当一个包被载入时,它的内容才可以被访问。一些常用、基本的程序包已经被收入了标准安装文件中,随着新的统计分析方法的出现,标准安装文件中所包含的程序包也随着版本的更新而不断变化。在另外版安装文件中,已经包含的程序包有:base一R的基础模块、mle一极大似然估计模块、ts一时间序列分析模块、mva一多元统计分析模块、survival一生存分析模块等等.[2]
4.R具有很强的互动性。除了图形输出是在另外的窗口处,它的输入输出窗口都是在同一个窗口进行的,输入语法中如果出现错误会马上在窗口口中得到提示,对以前输入过的命令有记忆功能,可以随时再现、编辑修改以满足用户的需要。输出的图形可以直接保存为JPG,BMP,PNG等图片格式,还可以直接保存为PDF文件。另外,和其他编程语言和数据库之间有很好的接口。[2]
5.如果加入R的帮助邮件列表一,每天都可能会收到几十份关于R的邮件资讯。可以和全球一流的统计计算方面的专家讨论各种问题,可以说是全世界最大、最前沿的统计学家思维的聚集地.[2]
R是基于S语言的一个GNU项目,所以也可以当作S语言的一种实现,通常用S语言编写的代码都可以不作修改的在R环境下运行。 R的语法是来自Scheme。R的使用与S-PLUS有很多类似之处,这两种语言有一定的兼容性。S-PLUS的使用手册,只要稍加修改就可作为R的使用手册。所以有人说:R,是S-PLUS的一个“克隆”。
但是请不要忘了:R是免费的(R is free)。R语言源代码托管在github,具体地址可以看参考资料。[3] 。
R语言的下载可以通过CRAN的镜像来查找。
R语言有域名为.cn的下载地址,有六个,其中两个由Datagurn,由中国科学技术大学提供的。R语言Windows版,其中由两个下载地点是Datagurn和USTC提供的。
R是一套完整的数据处理、计算和制图软件系统。其功能包括:数据存储和处理系统;数组运算工具(其向量、矩阵运算方面功能尤其强大);完整连贯的统计分析工具;优秀的统计制图功能;简便而强大的编程语言:可操纵数据的输入和输出,可实现分支、循环,用户可自定义功能。
Stata
Stata 是一套提供其使用者数据分析、数据管理以及绘制专业图表的完整及整合性统计软件。它提供许许多多功能,包含线性混合模型、均衡重复反复及多项式普罗比模式。用Stata绘制的统计图形相当精美。
新版本的STATA采用最具亲和力的窗口接口,使用者自行建立程序时,软件能提供具有直接命令式的语法。Stata提供完整的使用手册,包含统计样本建立、解释、模型与语法、文献等超过一万余页的出版品。
除此之外,Stata软件可以透过网络实时更新每天的最新功能,更可以得知世界各地的使用者对于STATA公司提出的问题与解决之道。使用者也可以透过Stat软件logoa Journal获得许许多多的相关讯息以及书籍介绍等。另外一个获取庞大资源的管道就是Statalist,它是一个独立的listserver,每月交替提供使用者超过1000个讯息以及50个程序。[1]
Stata的统计功能很强,除了传统的统计分析方法外,还收集了近20年发展起来的新方法,如Cox比例风险回归,指数与Weibull回归,多类结果与有序结果的logistic回归,Poisson回归,负二项回归及广义负二项回归,随机效应模型等。具体说, Stata具有如下统计分析能力:
数值变量资料的一般分析:参数估计,t检验,单因素和多因素的方差分析,协方差分析,交互效应模型,平衡和非平衡设计,嵌套设计,随机效应,多个均数的两两比较,缺项数据的处理,方差齐性检验,正态性检验,变量变换等。
分类资料的一般分析:参数估计,列联表分析 ( 列联系数,确切概率 ) ,流行病学表格分析等。
等级资料的一般分析:秩变换,秩和检验,秩相关等
相关与回归分析:简单相关,偏相关,典型相关,以及多达数十种的回归分析方法,如多元线性回归,逐步回归,加权回归,稳键回归,二阶段回归,百分位数 ( 中位数 ) 回归,残差分析、强影响点分析,曲线拟合,随机效应的线性回归模型等。
其他方法:质量控制,整群抽样的设计效率,诊断试验评价, kappa等。
Stata的作图模块,主要提供如下八种基本图形的制作 : 直方图(histogram),条形图(bar),百分条图 (oneway),百分圆图(pie),散点图(two way),散点图矩阵(matrix),星形图(star),分位数图。这些图形的巧妙应用,可以满足绝大多数用户的统计作图要求。在有些非绘图命令中,也提供了专门绘制某种图形的功能,如在生存分析中,提供了绘制生存曲线图,回归分析中提供了残差图等。
Stata是一个统计分析软件,但它也具有很强的程序语言功能,这给用户提供了一个广阔的开发应用的天地,用户可以充分发挥自己的聪明才智,熟练应用各种技巧,真正做到随心所欲。事实上,Stata的ado文件(高级统计部分)都是用Stata自己的语言编写的。
Stata其统计分析能力远远超过了SPSS,在许多方面也超过了SAS!由于Stata在分析时是将数据全部读入内存,在计算全部完成后才和磁盘交换数据,因此计算速度极快(一般来说, SAS的运算速度要比SPSS至少快一个数量级,而Stata的某些模块和执行同样功能的SAS模块比,其速度又比SAS快将近一个数量级!)Stata也是采用命令行方式来操作,但使用上远比SAS简单。其生存数据分析、纵向数据(重复测量数据)分析等模块的功能甚至超过了SAS。用Stata绘制的统计图形相当精美,很有特色。
Python
Python (英国发音:/ˈpaɪθən/ 美国发音:/ˈpaɪθɑːn/), 是一种面向对象的解释型计算机程序设计语言,由荷兰人Guido van Rossum于1989年发明,第一个公开发行版发行于1991年。
Python是纯粹的自由软件, 源代码和解释器CPython遵循 GPL(GNU General Public License)协议。Python语法简洁清晰,特色之一是强制用空白符(white space)作为语句缩进。
Python具有丰富和强大的库。它常被昵称为胶水语言,能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。常见的一种应用情形是,使用Python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中 有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,性能要求特别高,就可以用C/C++重写,而后封装为Python可以调用的扩展类库。需要注意的是在您使用扩展类库时可能需要考虑平台问题,某些可能不提供跨平台的实现。
7月20日,IEEE发布2017年编程语言排行榜:Python高居首位
Python在设计上坚持了清晰划一的风格,这使得Python成为一门易读、易维护,并且被大量用户所欢迎的、用途广泛的语言。
设计者开发时总的指导思想是,对于一个特定的问题,只要有一种最好的方法来解决就好了。这在由Tim Peters写的Python格言(称为The Zen of Python)里面表述为:There should be one-- and preferably only one --obvious way to do it. 这正好和Perl语言(另一种功能类似的高级动态语言)的中心思想TMTOWTDI(There's More Than One Way To Do It)完全相反。
Python的作者有意的设计限制性很强的语法,使得不好的编程习惯(例如if语句的下一行不向右缩进)都不能通过编译。其中很重要的一项就是Python的缩进规则。
一个和其他大多数语言(如C)的区别就是,一个模块的界限,完全是由每行的首字符在这一行的位置来决定的(而C语言是用一对花括号{}来明确的定出模块的边界的,与字符的位置毫无关系)。这一点曾经引起过争议。因为自从C这类的语言诞生后,语言的语法含义与字符的排列方式分离开来,曾经被认为是一种程序语言的进步。不过不可否认的是,通过强制程序员们缩进(包括if,for和函数定义等所有需要使用模块的地方),Python确实使得程序更加清晰和美观。
SPSS操作简介
首先打开spss软件
导入需要处理分析的数据
导入数据后的界面
![](https://i-blog.csdnimg.cn/blog_migrate/18eb5ce196b417eef57374c1ae5ef64b.png)
修改数据
找到要修改的数据双击进行修改
![](https://i-blog.csdnimg.cn/blog_migrate/0a966aeb750d376a1819f404b45f2854.png)
插入或删除一行数据
点击所要插入的行号,点击工具栏中的“插入行”图标
![](https://i-blog.csdnimg.cn/blog_migrate/3ffb85b34e6d89c8271e2e1b7f504144.png)
插入或删除一列
![](https://i-blog.csdnimg.cn/blog_migrate/39a5d6e4e1a106751c3c7d0f2194c920.png)
数据的剪切,复制和粘贴
![](https://i-blog.csdnimg.cn/blog_migrate/09e5357dfd9b66840621d49e47b21634.png)
产生一个新变量
![](https://i-blog.csdnimg.cn/blog_migrate/b8aff87a8f716f0cb64527b9a05a255e.png)
![](https://i-blog.csdnimg.cn/blog_migrate/58bdd23bf4d34f93088c384ddbd486bd.png)
![](https://i-blog.csdnimg.cn/blog_migrate/ce0dced0e87e868a5506b02b07b4cd41.png)
![](https://i-blog.csdnimg.cn/blog_migrate/4e32b60db5ba3989181ac70a7a662ce5.png)
合并两个文件数据
![](https://i-blog.csdnimg.cn/blog_migrate/39d2b6bccf252f63bf2179201b9f4a4c.png)
![](https://i-blog.csdnimg.cn/blog_migrate/b9f908f8957e8dc34dd4711acafce6b5.png)
![](https://i-blog.csdnimg.cn/blog_migrate/10092ca9ec87431fb74677a3942cb130.png)
![](https://i-blog.csdnimg.cn/blog_migrate/631001a50d884cac5a308f6ecfe80508.png)
以上便是SPSS的简单基本操作。