1基本知识html
1.1系统简介linux
那么R究竟是什么?或者说,R究竟是作什么用的?从不一样的角度出发,对R会有不一样的描述。web
从使用角度,R是一个有着统计分析功能及强大做图功能的软件,在GNU协议General Public Licence4下免费发行。数据库
从编程角度,R语言是面向对象的统计编程语言,是由AT&T贝尔实验室所创的S语言发展出的一种方言。编程
从计算角度,R 是一种为统计计算和图形显示而设计的语言及环境。windows
从开发角度,R 是一组开源的数据操做,计算和图形显示工具的整合包有各类方式能够进行编程调用。浏览器
从架构角度,R 是为统计计算和图形展现而设计的一个系统。它包括一种编程语言,高级别图形展现函数,和其它语言的接口以及调试工具。网络
若是必定要找到一个与R相似的软件,那就是商业软件Matlab。R和Matlab都是基于编程进行数据分析的工具,Matlab适用的领域更广,而R更擅长统计分析领域。与Matlab相比,R更具有开放性:架构
R是自由软件,Matlab是商业软件;curl
R能够方便的经过“包”进行扩展,R的核心只有25个包,可是有几千个外部包能够调用,固然你也能够开发本身的;
R语言比Matlab的要强大;
R和其余编程语言/数据库之间有很好的接口;其余语言也能够很方便的调用R的API和结果对象。
R经常使用于统计领域。大多数人使用R就是由于它的统计功能,R的内部实现了不少经典、时髦的统计技术。
1.2系统安装
打开浏览器,输入R语言官方网址:https://www.r-project.org/
进入网站,点击左边视图栏“Download”下的“CRAN”,进入镜像页面。
页面按国家名称排序镜像网站。建议选择国内镜像(如清华大学、北京交通大学、厦门大学等)进入下一个页面。
在这个页面,根据读者电脑操做系统的不一样进行选择。R语言同时支持Windows、Mac、Linux等操做系统。如微软操做系统则选择“Download R for Windows”,进入下一个页面。
在这个页面,对于首次安装R语言程序的读者,选择“install R for the first time”进入到下一个页面。
在这个页面显示当前R语言最新版本为3.2.3版本,读者选择“Download R 3.2.3 for Windows”,下载R语言安装程序包(exe)。
下载完成后,读者双击安装程序包(exe),选择默认设置便可完成安装。安装完毕后,桌面会出现蓝色大R图标。双击该图标,启动R程序,出现以下界面则系统安装成功。
1.3基本操做
R是一种语法很是简单的表达式语言,基于命令(command)能够经过交互、批处理及脚本等多种方式使用R语言。命令是表达式,也多是赋值语句。若是一条命令是表达式,它被解析后将结果显示在屏幕上,同时释放该命令所占用的内存。赋值语句一样会被解析并把值传给变量,但结果不会显示在屏幕上。建议读者在入门阶段认真学习命令,手动输入,逐步学习R语言。等彻底掌握,对R语言熟练以后再使用RStudio等工具软件进行操做。
R语言是经过大量“开箱即用”称之为“包”(package)的可选模块实现其强大的统计分析功能。“包”是一系列函数、数据、代码以R语言规范定义的格式组成的集合。这些包横跨各个领域,提供了丰富多彩的功能,包括聚类分析、金融、机器学习、生存分析、时间序列等34类,聚集了全球各行业专业人士应用R语言的最新成果,具体内容可参见1.3.4节内容。
在进行包安装和使用前,须要对CRAN进行设置。选择R菜单“程序包”,弹出下拉菜单,选择“设定CRAN镜像…”,建议仍然选择国内镜像。镜像站点设置完成后,便可开始包的安装。
1.3.1包的安装
包的安装通常有三种方法。
第一种是经过R菜单选择“程序包”下的“安装程序包…”,弹出包列表,选择相应程序包进行安装。这种方法须要熟知包名。
第二种是下载相应的包压缩文件(zip),而后经过R菜单选择“程序包”下的“从本地zip文件安装程序包…”,手动进行安装。
第三种是在提示符(>)下输入安装包的命令,程序会自动经过镜像站点查找包名,找到该包名后会自动进行连接、下载、安装一系列动做。在安装包的过程当中,如要求安装该包依赖的相关包,程序会自动进行连接、下载、安装,全程无需人工干预。推荐使用这种方法。
命令:install.packages(“包名”)
据官网统计,截至2017年1月,公开发布的包数量已接近10000个。对如此多的包,读者如何找到与工做、研究相关的包呢?在联网状态下,读者能够进入官网按照“包发布时间”或“包名”进行查阅。选择“Table of available packages, sorted by name”进入索引页面。也能够经过经过R菜单选择“帮助”下的“手册(PDF文件)”,在弹出菜单中选择“R Reference”进行查看。PDF索引不便于检索,建议采用网页检索方式。
在这个页面,读者能够打开查询窗口,输入关键英文单词、词组(如Ann、hydro、wave等)进行检索,经过相应的注释、说明,找到相应的包后,在程序窗口下输入对应的包名进行安装。
如经过查询,检索,找到一个关于研究中国有关数据的R接口包“rstatscn”,输入安装命令后,提示该包须要安装curl、openssl、R六、httr这4个相依赖的包。程序自动搜寻、下载并安装这些包后,完成“rstatscn”的安装。
1.3.2包的使用
包安装完成后,须要进行加载才能使用。计算机上存储包的目录称为库(library),函数.libPaths()显示库所在的位置,函数library()显示库中全部的包,函数search()显示已经加载并可以使用的包。
程序窗口显示当前可用的包有:stats、graphics、datasets、methods、base等包。这些包是R语言程序运行的基础包。在程序启动时已经加载到内存当中。能够经过以下命令对咱们关注的包进行查阅。
命令:library(help=“包名”)
如对stats这个包进行查阅,输入:library(help=“stats”),回车便可弹出base这个包的详细说明。也可经过命令help.start() 启动“HTML帮助文件“查看相应参数、具体使用方法及范例等内容。建议使用HTML方式查阅。
包不加载,或包加载失败,后续工做即没法开展。肯定要使用的包名之后,使用以下命令加载该包。
命令:library(包名)
前述的stats、graphics、datasets等基础包不须要再次加载,可直接使用。在加载一个包前必须肯定已经安装了这个包。一次会话中,包只需加载一次。有些包会对依赖包中的参数、方法进行重构,加载这类包时会有提示信息,不影响正常使用。若是须要,能够自定义启动环境,修改根目录下\etc\文件夹中的Rprofile.site配置文件,可实现程序启动时自动加载频繁使用的包,方便工做开展。
1.3.3 工做空间
R语言程序启动即加载一个工做空间(workspace)。工做空间存储当前工做环境下全部操做的命令、函数、步骤等。保存工做空间时,系统会生成.RData和.Rhistory,其中.RData以二进制的方式保存了会话中的变量值,.Rhistory以文本文件的方式保存了会话中的全部命令。
保存当前工做空间,下次启动程序会默认打开上次关闭的工做空间,并提示“原来保存的工做空间已还原”,此时可使用ls()、ls.str()和history()函数查看以前保存的数据和命令。使用rm()和remove()函数能够删除工做空间中的变量。使用getwd()和setwd()函数能够获取/设置工做空间目录。使用list.files()函数能够查看当前目录下的文件。在后续工做中,能够经过上、下箭头(↑、↓)快速调取已使用的命令、函数,提升效率。
针对不一样的工做内容应建立不一样的工做空间。
1.3.4任务视图
打开浏览器,输入镜像网址:https://cran.r-project.org/。进入网页后点击左边视图栏“Task Views”,进入“任务视图”页面。
该页搜集整理了R语言在聚类分析、计量经济学、生态环境分析、金融、遗传学、并行计算、机器学习、心理学、最优化、稳健统计、生存分析、时间序列等34类大的专项任务研究状况。每个分类下面都聚集了全球各行业专业人士应用R语言的最新成果内容。读者可根据本身的兴趣(如时间序列分析)选择相应分类进一步了解有关内容。
R语言任务视图分类表
分类任务名称 |
主要研究内容 |
Bayesian贝叶斯推理 |
Bayesian Inference |
ChemPhys化学物理分析 |
Chemometrics and Computational Physics |
ClinicalTrials临床试验 |
Clinical Trial Design, Monitoring, and Analysis |
Cluster聚类分析 |
Cluster Analysis & Finite Mixture Models |
Differential Equations |
|
Distributions几率分布 |
Probability Distributions |
Econometrics计量经济学 |
Econometrics |
Environmetrics生态环境分析 |
Analysis of Ecological and Environmental Data |
Design of Experiments (DoE) & Analysis of Experimental Data |
|
Finance实证金融 |
Empirical Finance |
Genetics统计遗传学 |
Statistical Genetics |
Graphics图形可视化 |
Graphic Displays & Dynamic Graphics & Graphic Devices & Visualization |
高性能并行计算 |
High-Performance and Parallel Computing with R |
MachineLearning机器学习 |
Machine Learning & Statistical Learning |
MedicalImaging医学图像 |
Medical Image Analysis |
MetaAnalysis元分析 |
Meta-Analysis |
Multivariate多变量统计 |
Multivariate Statistics |
Natural Language Processing |
|
Numerical Mathematics |
|
OfficialStatistics官方统计调查方法 |
Official Statistics & Survey Methodology |
Optimization最优化 |
Optimization and Mathematical Programming |
Pharmacokinetics药物代谢动力学 |
Analysis of Pharmacokinetic Data |
Phylogenetics种系遗传学 |
Phylogenetics, Especially Comparative Methods |
Psychometric Models and Methods |
|
Reproducible Research |
|
Robust稳健统计方法 |
Robust Statistical Methods |
SocialSciences社会科学 |
Statistics for the Social Sciences |
Spatial空间分析 |
Analysis of Spatial Data |
SpatioTemporal时空数据处理与分析 |
Handling and Analyzing Spatio-Temporal Data |
Survival生存分析 |
Survival Analysis |
TimeSeries时间序列 |
Time Series Analysis |
WebTechnologies网络技术与服务 |
Web Technologies and Services |
gR图论 |
GRaphical Models in R |
系统程序也能够经过install.packages(“ctv”)命令自动安装“任务视图”,安装成功后,加载ctv包便可查阅所有分类信息。
经过install.views()命令可一次性安装某类(如TimeSeries)视图下的所有可用包。
1.4 使用帮助
开源软件一般都有很是好的帮助系统,不管对于初学者仍是熟练者都能带来很大的帮助。R固然也不例外。R中提供的帮助主要有如下几种:
1.4.1 HTML帮助文档,这是最经常使用的帮助文档,方法是输入help.start()命令,程序会自动打开浏览器,连接到本地安装的帮助文档。包括入门文档(Manuals)、索引(Reference)、问答(Windows FAQ)及搜索(Search Engine & Keywords)等功能。其中索引(Reference)下的包(Packages)为本地已安装全部R包列表。
1.4.2 命令帮助文档,若是已经知道一个函数的名称(好比mean),须要了解其所属的包、用途、用法、参数说明、返回值、参考文献、相关函数以及范例等,可使用以下命令:help(“mean”) (引号能够省略),或?mean,程序会打开浏览器,显示该函数的详细文档内容,包括定义、表达式、参数含义、值、范例等。使用help(package=“包名”)命令还能够查看具体包的详细内容和其余信息。
1.4.3 参数帮助文档,对于函数,可使用args()命令获取函数参数。
1.4.4 搜索文档,若是不知道函数具体用法(如mean),可使用以下命令进行搜索:??mean
程序会打开浏览器,列出全部mean()函数的搜索结果,这些结果说明mean()函数在不一样包的定义、应用有多是不同的,读者可根据搜索结果详细阅读有关内容。这种方法(??)等同于输入help.search(“”)命令。
1.4.5 示例文档,对于函数用例,还可使用example(“”)(引号能够省略)命令执行示例。
1.4.6 演示文档,使用demo()能够查看示范程序,demo()会按照包分组,列出全部可用的演示文档。输入可演示的名称能够进行演示。
1.4.7 系统关键字和运算符帮助文档,与函数的帮助相似,可是须要加上单引号。
1.4.8 函数文档,使用apropos(“关键词”)能够找到全部包含“关键词”的可用函数。
1.4.9 PDF文档,使用vignette(“主题词”)能够列出全部包含“主题词”的可用PDF文档。
1.4.10官方网站搜索,前述各类帮助方法都受限于本地环境已经安装的包。若是要搜索R中全部的资源(包,函数、数学方法等),可使用RSiteSearch(“”)命令,或者在R的官方网站搜索,输入:https://www.r-project.org/search.html