R语言和SQL语言
张建中
2014年07月16日
10.?统计分析语言R
R是用于统计分析和绘图的语言,也是一个自由、免费、源代码开放的软件。R由新西兰奥克兰大学的Ross?Ihaka和Robert?Gentleman?开发,是一个因他们名字含有共同的首字母R来命名的程序系统。
R是基于S语言的一个GNU项目,所以也可以当作S语言的一种实现,通常用S语言编写的代码都可以不作修改地在R环境下运行。这里所说的S语言是由AT&T贝尔实验室开发的一种用来进行数据探索、统计分析、作图的解释型语言。它以丰富的数据类型(向量、数组、列表、对象等)特别有利于实现新的统计算法,其交互式运行方式、强大的图形及交互图形功能使得人们可以在计算机上方便地进行数据探索。目前S语言的实现版本主要是S-Plus。作为统计学家及一般研究人员的通用方法工具箱,S-Plus强调演示图形、探索性数据分析、统计方法、开发新统计工具的计算方法,以及可扩展性。S-Plus可以直接用来进行标准的统计分析,并得到所需结果,但它的主要特点是可以交互地从各个方面去发现数据中的信息,并可以很容易地实现一个新的统计方法。
R的原代码可自由下载使用,亦有已编译的执行档版本可以下载,可在多种平台下运行,包括使用Unix、Linux和Windows等操作系统的众多计算机。
R内含有多种统计学及数字分析功能。因为S的血缘,R比其他统计学或数学专用的编程语言有更强的面向对象程序设计功能。R的另一强项是绘图功能,制图具有印刷的素质,也可加入数学符号。
虽然R主要用于统计分析或者开发统计相关的软件,但也有人用作矩阵计算。其分析速度可媲美GNU?Octave甚至商业软件MATLAB。
R的功能能够通过由用户撰写的套件增强。增加的功能有特殊的统计技术、绘图功能,以及编程介面和数据输出/输入功能。这些软件包是由R语言、LaTeX、Java及最常用C语言和Fortran撰写的。
R语言的语法表面上类似?C语言,但在语义上,R语言是函数设计语言的的变种并且和Lisp以及APL有很强的兼容性。特别是它允许在“语言上计算(computing?on?the?language)”,这使得它可以把表达式作为函数的输入参数,而这种做法对统计模拟和绘图非常有用。
R是一套完整的数据处理、计算和制图软件系统。其功能包括:数据存储和处理系统;数组运算工具(其向量、矩阵运算方面功能尤其强大);完整连贯的统计分析工具;优秀的统计制图功能;简便而强大的编程语言:可操纵数据的输入和输出,可实现分支、循环,用户可自定义功能等。
与其说R是一种统计软件,还不如说R是一种数学计算的环境,因为R并不是仅仅提供若干统计程序、使用者只需指定数据库和若干参数便可进行一个统计分析的软件。R的思想是:它可以提供一些集成的统计工具,但更重要的是它大量提供各种数学计算、统计计算的函数,从而使使用者能灵活机动地进行数据分析,甚至创造出符合需要的新的统计计算方法。
R是一个免费的自由软件,它有Unix、Linux和Windows版本,都可以免费下载和使用。
11.?结构查询语言SQL
结构查询语言(Structured?Query?Language),简称SQL,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统,同时也是数据库脚本文件的扩展名。
结构化查询语言是高级的非过程化编程语言,它允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以它具有完全不同底层结构的不同数据库系统,可以使用相同的结构化查询语言作为数据输入与管理的接口。结构化查询语言语句可以嵌套,这使它具有极大的灵活性和强大的功能。如今无论是像Oracle?,Sybase,Informix,SQL?server这些大型的数据库管理系统,还是像Visual?Foxporo,Power?Builder这些微机上常用的数据库开发系统,都支持SQL作为查询语言。
结构化查询语言SQL是最重要的关系数据库操作语言,并且它的影响已经超出数据库领域,得到了其他领域的重视和采用,如人工智能领域的数据检索,第四代软件开发工具中嵌入SQL的语言等。
SQL语言基本上独立于数据库本身使用的机器、网络、操作系统,基于SQL的数据库管理系统DBMS产品可以运行在从PC、工作站到基于局域网、小型机和大型机的各种计算机系统上,具有良好的可移植性。早在1987年就有些有识之士预测SQL的标准化是“一场革命”,是“关系数据库管理系统的转折点”。数据库和各种产品都使用SQL作为共同的数据存取语言和标准接口,使不同数据库系统之间的互操作有了共同的基础,进而实现异构机、各种操作环境的共享与移植。
结构化查询语言SQL包含6个部分:
1、数据查询语言(DQL:Data?Query?Language);
2、数据操作语言(DML:Data?Manipulation?Language);
3、事务处理语言(TPL);
4、数据控制语言(DCL);
5、数据定义语言(DDL);
6、指针控制语言(CCL)。
结构化查询语言SQL的语言特点:一体化、非过程化;使用方式灵活,只提操作要求,不必描述操作步骤,也不需要导航;语言简洁,语法简单,好学好用,使用简要。