搜索
简帛阁>技术文章>R实战 开篇:介绍R的使用

R实战 开篇:介绍R的使用

R是专门用于数据分析和统计的脚本语言,广泛应用在每一个需要统计和数据分析的领域。使用R做数据建模、数据统计和分析是一个发现未知和惊喜的旅程,前提,你必须迈出第一步,去学习R语言。R是一种解释型语言,这意味着代码在运行之前不需要编译,在学习R语言时,首先需要安装R,访问网站 https://www.r-project.org/,下载适合操作系统的R安装包,我下载的是用于Windows操作系统中的 R 3.4.2 版本;其次,一款好用的IDE,是学习路上的好助手,我推荐使用RStudio,这是一款专门用于R开发的开源集成开发环境(IDE),官方下载地址是:RStudio,RStudion集成了控制台程序(终端),本文通过控制台介绍R的使用。

R是一种区分大小写的解释性语言,R语句的分隔符是分号“;”,或换行符,当语句结束时,可以不使用分号“;”,R语言会自动识别语句结束的位置。R语言只支持单行注释,注释由符号#开头,当前行出现在#之后的任何文本都会被R解释器忽略。R脚本的一次执行叫做一个会话(Session),可以通过函数quit()退出当前的会话,

quit(save = "default", status = 0, runLast = TRUE)
   q(save = "default", status = 0, runLast = TRUE)

在当前会话中创建的任何R对象(数据、函数、图形等)都保存在内存中。创建的变量都需要存储到到环境中,即环境是存储变量的地方,通常情况下,不需要直接跟环境打交道,R会自动创建环境来存储变量,例如,当分配一个变量时,该变量会自动存储到全局环境中,当调用函数时,R自动创建一个环境,用于存储与该函数相关的变量。

一,管理工作空间

工作空间(WorkSpace)是当前R的工作环境,存储着用户定义的所有对象(向量,矩阵,函数,数据框,列表,函数等)。在一个R会话结束时,用户可以把当前的工作空间保存导一个镜像(image)文件中,并在下次启动R时自动载入。

1,保存工作空间

把工作空间保存到镜像文件中,扩展名默认是.RData。

save.image("myfile")

2,载入工作空间

从镜像文件中读取数据,把工作空间读取到当前的会话中

load("myfile")

3,列出当前工作空间的对象

在当前工作空间中创建的变量都存储在内存中,ls()和objects() 用于列出指定环境中的对象:

ls(pattern)

参数 pattern是正则表达式,只有名称匹配该pattern的变量才会返回。缺失该参数(ls()),表示返回当前环境中的所有变量名。

4,移除当前工作空间的对象

rm()和 remove() 用于移除工作空间中的对象,这两个函数的定义和作用是一样的:

rm    (..., list = character(), pos = -1,
       envir = as.environment(pos), inherits = FALSE)

移除当前工作空间中的所有内存变量:

rm(list=ls())

5,空间空间选项

例如,空间小数位数为2,digits: controls the number of digits to print when printing numeric values.

options(digits=2)

二,工作目录

工作目录(Working Directory)是R用来读取文件和保存结果的默认目录,如果需要读取一个不在当前工作目录下的文件,则需要在调用语句中写明完整的路径。

1,查看当前的工作目录

getwd()

2,设置当前的工作目录

setwd("mydirectory")

在Windows系统中,R将反斜杠(\)视为一个转移字符,setwd("c:\myfile")会报错,两个反斜杠"\\"代表一个反斜杠,正确的写法是:

setwd("c:/myfile")
setwd("c:\\myfile")

三,输入和输出

用户可以执行写在一个脚本文件中的命令,并可以直接把结果输出到不同的目标文件中。

1,执行脚本文件

函数source("file"),在当前会话中执行一个R脚本,如果文件名中不包括路径,R会到当前的工作目录中查找脚本文件。R引擎执行脚本文件之后,把结果保存到内存中,需要重定向输出,才能看到输出的文本或图形。

source("myfile")

2,重定向文件输出

函数sink("file")把输入重定向到文件中,默认情况下,如果文件已经存在,则它的内容会被覆盖。使用参数append=TRUE可以把输出的数据追加到文件的末尾,而不是覆盖。参数split=TRUE,指定把输出同时发送到屏幕和文件中,不加参数调用命令sink(),将仅向屏幕返回输出结果。

sink("file")

3,重定向图形输出

用于保存图形输出的常用函数有如下三个:

bmp("file.bmp")
jpeg("file.jpg")
pdf("file.pdf")

最后使用dev.off()把图形输出,返回到终端。

四,控制台操作

在控制台(Console)中输入的任何命令,都被记录下来,用户可以通过上/下方向键查看(上翻/下翻)已输入的命令。

当输入的命令很多时,可以通过快捷键 Ctrl+L 可以清空控制台,但不会清空命令的历史记录。

五,获取帮助

help("function")函数用于查看函数的帮助,引号可以省略,也直接使用?fun来获取帮助:

help("q")
?q

如果使用RStudio,可以直接通过Help菜单获取帮助:

六,加载示例数据集

step1,使用data()函数列出当前已经加载包中所有的所有可用示例数据集,例如

->data()

step2,把示例数据集载入到当前的会话中,也就是把dataset_name对应的对象加载到当前会话中,用户可以直接在会话中通过dataset_name直接引用:

>data("dataset_name")
>data(dataset_name)

当对系统数据集进行编辑之后,想要恢复(restore)该数据集,做法是删除该数据集:

rm(dataset.name)

这是因为R环境的处理方式决定的,R_GlobalEnv 环境(“全局变量环境”)把全局变量隐藏在库中,但它们不会被覆盖。 当GlobalEnv环境中的变量名称被清除后,该库将再次成为评估该变量名称的默认结果。

七,调整画布设备

在Windows操作系统中,执行以下代码调整画布的大小:

win.graph(width=4.875, height=2.5,pointsize=8)

 

参考文档:

 

R是专门用于数据分析和统计脚本语言,广泛应用在每一个需要统计和数据分析领域。使用R做数据建模、数据统计和分析是一个发现未知和惊喜旅程,前提,你必须迈出第一步,去学习R语言。R是一种解释型语言,这
dat<sample(1:100000,47)breaks<seq(0,100000,by10000)dat2<cut(dat,breaksbreaks)table(dat2)
我就废话不多说了,大家还是直接看代码吧~R语言中的加法函数add4<function(x,y){x+y}一个复杂一些R语言程序R语言程序add2<function(x,y){x+y}ab
grid包是一个底层绘图系统,能够灵活地控制图形输出外观和布局,但是grid包不提供创建完整图形高级绘图系统,例如,ggplot2和lattice,而是提供绘制开发这些高级绘图基础接口,例如:
R语言来自S语言,是S语言一个变种。S语言由RickBecker,JohnChambers等人在贝尔实验室开发,著名C语言、Unix系统也是贝尔实验室开发。S语言第一个版本开发于19761980
Rjava文件介绍HelloWorld工程中的Rjava文件packagecomandroidhellworld;publicfinalclassR{publicstaticfinalclassatt
Basic包是R语言预装开发包,包含了常用数据处理函数,可以对数据进行简单地清理和转换,也可以在使用其他转换函数之前,对数据进行预处理,必须熟练掌握常用数据处理函数。一,合并向量函数append
在数据分析中,整理数据本质可以归纳为:对数据进行分割(Split),然后应用(Apply)某些处理函数,最后将结果重新组合(Combine)成所需格式返回,简单描述为:SplitApplyComb
据标准化处理是数据分析一项基础工作,不同评价指标往往具有不同量纲,数据之间差别可能很大,不进行处理会影响到数据分析结果。为了消除指标之间量纲和取值范围差异对数据分析结果影响,需要对数据进
args_testR代码如下:Args<commandArgs()cat(Args[1],Args[1],\n)cat(Args[2],Args[1],\n)cat(Args[3],Args[3