r语言怎样快速编译
❶ r语言编译器
r语言是个语言环境,rstudio是编译器。
实际上直接用r进行数据分析也不是不可以,但是个人使用经验,在debugging的时候不太方便。
rstudio本身能帮你完成模糊拼写,特别是在你不特别清楚应该使用具体哪一个函数的时候。
可视化方面更好,代码能够展示得更加清晰。
rstudio能够直接帮助更新或者下载个中packages
具体使用看个人习惯吧。
以上。
❷ r语言有没有windows编译器
是的,R语言在Windows平台上有专门的编译器可以使用。这个编译器叫做Rtools,它是一个自由的樱碰颂、开源的工具集,可以帮助您在Windows上编译和构建R包。Rtools包含了一组编译工具,包括GNU编译器、GNU make和其他一些实用工具,这些工具可以帮助您编译和构建R包脊郑所需的C/C++代码和其他依赖项。
要在Windows上使用Rtools编译R包,您需要先在您的计算机上安装R和Rtools。安装Rtools的方法是先下载并安装最新版本的Rtools,然后将Rtools的路径添加到系统环境变量中吵磨。这样,您就可以在R中使用编译器进行编译和构建R包了。在R中,可以使用命令install.packages()来安装R包,命令install.packages()还可以使用编译器编译和构建源代码包。
需要注意的是,Rtools需要与您所使用的R版本兼容,因此,在安装Rtools之前,您需要确认您所使用的R版本与Rtools兼容。另外,使用Rtools进行编译和构建R包时,您还需要了解一些C/C++编程知识。
❸ 如何在linux环境下使用r语言
1、下载
wget http://mirror.bjtu.e.cn/cran/src/base/R-3/R-3.0.1.tar.gz
2、解压:
tar -zxvf
R-3.0.1.tar.gz
cd R-3.0.1
3、安装 (当然也可以跳过)
yum
install readline-devel
yum install libXt-devel
./configure
4、 配置环境并编译安装
#
如果使用rJava需要加上 --enable-R-shlib
(这个我不需要,所以加入到后面)
# 如果3没安装, 那么后面加上: --with-readline=no
--with-x=no
./configure --prefix=/usr/R-3.0.1
make $$ make install
5、配置环境变量并生效
vi
.bash_profile
export R_HOME=/usr/R-3.0.1
export PATH=.:$R_HOME/bin:$PATH
# 试环境变量生效
source .bash_profile
6、 命令行测试
[admin@JD
software]$ R
WARNING: ignoring environment value of R_HOME
R version 3.0.1 (2013-05-16) -- "Good Sport"
Copyright (C) 2013 The R Foundation for Statistical Computing
Platform: x86_64-unknown-linux-gnu (64-bit)
R是自由软件,不带任何担保。
在某些条件下你可以将其自由散布。
用'license()'或'licence()'来看散布的详细条件。
R是个合作计划,有许多人为之做出了贡献.
用'contributors()'来看合作者的详细情况
用'citation()'会告诉你如何在出版物中正确地引用R或R程序包。
用'demo()'来看一些示范程序,用'help()'来阅读在线帮助文件,或
用'help.start()'通过HTML浏览器来看帮助文件。
用'q()'退出R.
> q()
7、创建脚本测试(t.R)
cd
/opt/script/R
vim t.R
#!/path/to/Rscript
#第一行
x<-c(1,2,3)
#R语言代码
y<-c(102,299,301)
model<-lm(y~x)
summary(model)
8、测试:执行脚本
R CMD BATCH
--args /opt/script/R/t.R
more
/opt/script/R/t.Rout
#查看执行的结果
或者第二种方式
Rscript
/opt/script/R/test.R
#结果直接输出到终端
❹ r语言教程是什么
R语言教程是指导使用R语言的手册,用于统计分析,图形表示和报告的编程语言和软件环境。
R语言由Ross Ihaka和Robert Gentleman在新西兰奥克兰大学创建,目前由R语言开发核心团队开发。R语言在GNU通用公共许可证下免费提供,并为各种操作系统(如Linux,Windows和Mac)提供预编译的二进制版本。
这种编程语言被命名为R语言,基于两个R语言作者的名字的第一个字母(Robert Gentleman和Ross Ihaka),并且部分是贝尔实验室语言S的名称。
(4)r语言怎样快速编译扩展阅读
适用人群
本教程是为期待使用R编程开发统计软件的软件程序员,统计学家和数据挖掘者设计的。如果你试图理解R编程语言作为一个初学者,本教程将给你足够的了解语言的几乎所有的概念,从那里你可以把自己的更高水平的专业知识。
学习前提
在继续学习本教程之前,您应该基本了解计算机编程术语。对任何编程语言的基本理解将帮助您理解R语言编程概念,并在学习轨道上快速移动。
❺ R软件的入门教程及R语言的编译
建议读一下《R语言经典实例》
❻ R语言基础汇总
%>%是管道符的意思,把左边的输出(不包括 <- 之前的)当成右边的输入。
都可以shift + alt + 上下 :快速复制粘贴
alt + 上下 :移动行
ctrl + alt + 上下 :多重光标
首先选中要注释掉的行,然后按Ctrl+shift+C ,这样就注释掉了。
sessionInfo()
.libPaths()
一篇关于包的博客
library(installr)
updateR()
COS中文论坛 统计之都旗下的论坛网站(d.cosx.org),它和其主站(cosx.org)一 起,是一个致力于推广与应用统计学知识的网站和社区。
1 help("t.test")
2 ?t.test
3 help.search("t.test")
4 apropos("t.test")
5 RGui>Help>Html help
6 查看R包pdf手册
getwd() 显示工作目录
setwd() 设定工作目录
list.files() 列出目录或文件夹下的文件
demo( ) 显示R的基本程序包
example( ) 显示在线帮助的例子
example(barplot)
可以把若干行命令保存在一个文本文件(比如Eg3.R)中,然 后用source函数来运行整个文件: source("E:/R demo/Chapter1-Eg3.R")
sum, mean, var, sd, min, max, range, median, IQR(四分位间距)等为统计量, sort,order,rank与排序有关, 其它还有ave,fivenum,mad,quantile, stem等
-1:1/0 当中/是优先级靠后的操作。相当于c(-1,0,1)/0
names(df) <- c("male", "female", "unknown")
对于矩阵,我们可以使用属性rownames和colnames来访问行名和列名。
我们也可以先定义矩阵x然后再为dimnames(x)赋值:
数值型数据 :1.2345e30
复数常量就用3.5-2.1i
缺失值:NA(Not Available)
是否含有缺失值:
NaN表示不确定的数
• NaN属于NA的一种
• NA不是NaN
注意下面例子的比较 :
assign("x1", c(1, 2))
sort(x)返回x的元素从小到大排序的结果向量。
x=c(2,10,6,8,4,5); sort(x) [1] 2 4 5 6 8 10 order(x)返回使得x从小到大排列的元素下标向量(x[order(x)]等效于sort(x))。
此外numeric(n)可以产生一个长度为n的零向量(numeric(n)是一个 很好用的外部存储器)
paste函数用来把它的自变量连成一个字符串,中间用空格分开
Re( )计算实部,Im( )计算虚部, Mod( ) 计算复数模,Arg( )计算复数幅角。
v为一个向量,取值在-length(x)到-1之间,表示扣除相应 位置的元素。例如:
可以用x[]的写法:
R的对象有两个基本的属性:类型属性(mode)和长度属性(length)。
长度为零的向量 numeric( ) 或者 numeric(0) character( ) 或者 character(0)
数组(array): 带多个下标的类型相同的元素的集合,
函数matrix():用于构造二维数组,即矩阵
函数factor( )用来把一个向量编码成为一个因子。
可以自行指定各离散取值水平(levels),不指定时由x的不同值来求得。
• labels可以用来指定各水平的标签,不指定时用各离散取值的对应字符串。
• exclude参数用来指定要转换为缺失值(NA)的元素值集合。
• ordered取真值时表示因子水平(Levels)是有次序的
因子可以用来作为另外的同长度变量的分类变量,使用tapply() 函数可以完成分类统计
nchar()这个函数简单,统计向量中每个元素的字符个数
tolower()和toupper()可以进行大小写字母的转换
chartr()把字符串里的元素,按要求进行转换
拆分字符串用strsplit()函数,strsplit得到的结果是列表,后面的处理要调用列表
其任何一个语句都可以看成是一个表达式。
表达式之间以分号分隔或用换行分隔。
表达式可以续行,只要前一行不是完整表达式,则下一行为上一行的继续。
线性回归模型:
lm()函数的返回值叫做模型拟合结果对象,本质上是一个列表, 有model 、coefficients、resials等成员。lm()的结果显示十分 简单,为了获得更多的拟合信息,可以使用对lm类对象有特 殊操作的通用函数,这些函数包括:
add1 coef effects kappa predict resials alias deviance family labels print summary anova drop1 formula plot proj
加号+或 者减号-,表示在模型中加入一项或去掉一项,第一项前面如果是加号可以 省略
在非交互运行(程序)中应使用print()来输出。
• digits参数指定每个数输出的有效数字位数;
• quote 参数指定字符串输出时是否带两边的撇号;
• print.gap参数指定矩阵或数组输出时列之间的间距
也用来输出,但它可以把多个参数连接起来再输出(具有paste() 的功能)。例如:
读取文件:
strsplit()得到的结果是 列表。
grep() 和 grepl()
sub()和gsub()
但严格地说R语言 没有字符串替换的函数,因为R语言不管什么操作对参数都是传值不传址,区别如下:
用substr()和substring() 可以通过位置进行字符串拆分或提取,两者的参数设置基本相同:
strtrim() 函数可以用于将字符串修剪到特定的显示宽度通过位置进 行字符串拆分或提取:
由于日期内部是用double存储的天数,所以是可以相减的。
weekdays ( )取日期对象所处的周几;
months ( )取日期对象的月份;
quarters ( )取日期对象的季度;
其任何一个语句都可以看成是一个表达式。
表达式之间以分号分隔或用换行分隔。
表达式可以续行,只要前一行不是完整表达式,则下一行为上一行的继续。
quantile(x, probs=seq(0,1,0.25), na.rm=FALSE, names=TRUE, type=7, …)
probs给出相应的百分位数,默认值是0,0.25,0.5,0.75,1;na.rm是处 理缺失数据的,na.rm=TRUE时,NA和NaN将从数据中移走,向量取值中 若有NA或NaN,要添加这一参数,否则会出错;names若为TRUE,返回 值当中有names这个属性"; type是取值1-9的整数,选择了九种分位数算法 (具体算法见帮助文件)中的一种。
数据的分布主要考察分布函数(p), 密度函数(d), 分位数函数(q)及产生随机数(r)
以正态分布为例:
hist(x, breaks="Sturges", freq=NULL, probability=!freq,… )
break规定了直方图的组距(必须覆盖数据的范围);freq是逻辑变量,TRUE是频率直方图, FALSE是密度直方图;probability和freq相反,TRUE是密度直方图,FALSE是频率直方图
其形式为 coplot(y ~ x | z),其中x 和y是数值型向量,z是同长度的因子。 对z的每一水平,绘制相应组的x和y的散点图
R缺省的图形边空常常太大,以至于有时图形窗口较小时边空占了整个图形的很大一部分。
R可以在同一页面开若干个按行、列排列的窗格,在每个窗格中可以作一 幅图。每个图有自己的边空,而所有图的外面可以包一个“外边空”。
一页多图用 mfrow 参数或 mfcol 参数规定,如
函数 mtext 用来在外边空加文字标注。其用法为
在多图环境中还可以用 mfg 参数来直接跳到某一个窗格,比如
可以不使用多图环境而直接在页面中的任意位置产生一个窗格来绘图,参数为 fig ,如:
先用as.factor()转化成因子。因为levels()函数里面必须是因子。
dat$Genre没有转化成因子形式,as.factor(dat$Genre)就可以了
该消息表明文件的最后一行不以行尾 (EOL) 字符结尾(换行符 ( ) 或回车 + 换行符 ( ))。此消息的初衷是警告您该文件可能不完整;大多数数据文件都有一个 EOL 字符作为文件中的最后一个字符。
这是因为R读取文件的时候,是一整段character,所以它只会返回1,适当给他分一下段。
❼ 怎样才能学好电脑的R语言
R语言快速入门:数据结构+生成数据+数据引用+读取外部数据
查看完整文档可至网络网盘:
链接:https://pan..com/s/1cEdmpO5idfxx044TpqVBuA
提取码: bi3t
R是用于统计分析、绘图的语言和操作环境。R是属于GNU系统的一个自由、免费、源代码开放的软件,它是一个用于统计计算和统计制图的优秀工具。常被用于统计学、计量分析等领域。接下来讲一下我个人认为的R入门知识。
目录
1 数据结构
1.1 向量
1.2 矩阵
1.3 数据框
2 生成数据
2.1 c() 连接单个数据
2.2 ":" 生成1/-1等差向量
2.3 seq() 生成等距向量
2.4 rep() 生成重复数据
3 数据引用
3.1 引用行/引用列
3.2 引用单个元素
3.3 引用册历子矩阵
3.4 变量名引用
4 读取外部数据(表)
4.1 更改工作目录
4.2 read.table
4.3 read.csv
正文
1 数据结构
本节主要讲向量、矩阵、数据框三种数据结构(入门必须学)
1.1 向量
用于存储数值型、字符型或逻辑型数据的一维数组,常用"c()"创建。例如:
>c(1,2,8)#生成包含1,2,8的一维数组(向量)
[1]128
1.2 矩阵
二维数组具有行列的概念
#矩阵用法
matrix(data=NA,nrow=1,ncol=1,byrow=FALSE,dimnames=NULL)#表示生成1行,1列的一个矩阵,其中仅仅包含一个元素“NA”
#---示例---#
>matrix(c(1,2,3,11,12,13),nrow=2,ncol=3,byrow=TRUE,dimnames=list(c("row1","row2"),c("C.1","C.2","C.3")))
C.1C.2C.3
row1123
row2111213
#nrow=2和ncol=3定义2x3的2行3列矩阵
#byrow=TRUE是控制矩阵中的数据c(1,2,3,11,12,13)按照行的顺序排列,默认按照列排列
#dimnames=list(c("row1","row2"),c("C.1","C.2","C.3"))定义矩阵行名和列名
1.3 数据框
主要用于向量/矩阵合并,可以将不通类型的以向量以及矩阵,按照一定结构存储在数据框中。
>x<-c(11:20)#其中"<-"是赋值的意思,将向量c(11:20)赋值给对象x
>y<-c(1:10)
>data.frame(xf=x,yf=x)#将向量x和y合并存储到数据框中,并重命名为xf和yf
xfyf
11111
21212
31313
41414
51515
61616
71717
81818
91919
102020
数组与矩阵类似,但其维度大于2.由于R入门基本接触不到3维以上数组的概念,目前暂不展开,等入门后在反过来看。
2 生成数据
本节主要讲“c()”、":"、seq、rep等四种数据生成的内容(入门必须学)
2.1 “c” 连接单个数据
>c(1,2,8)#生成包含1,2,8的向量
2.2 “:“ 生成1/-1等差向量
>1.1:10
[1]1.12.13.14.15.16.17.18.19.1
>1:10
[1]12345678910
>10:1#如x=1:10(递减,如y=10:1)
[1]10987654321
2.3 seq 生成等距向量
①seq(起点,终点,步长);
②seq(length=9, from=1, to=5)
>seq(1,10,2)
[1]1启灶3579
>seq(length=5,1,10)
[1]1.003.255.507.7510.00
#seq(x)相当于1:length(x);length(x)为0时悄姿扮,返回integer(0)
>seq(10)
[1]12345678910
>seq(c())
integer(0)
2.4 rep(x,n) 重复
将x重复n次,可使用each限定为依次重复形式
rep(1:3,3)
rep(1:3,each=3)
#>rep(1:3,3)
#[1]123123123
#>rep(1:3,each=3)
#[1]111222333
额外补充:R语言|第2讲:生成数据
3 数据引用(以矩阵为例)
数据引用必须懂“对指定维度数据的引用”(以二维矩阵为例)
3.1 行引用/列引用
例如:引用第一行数据,引用第一列数据,引用第一行第一列的数据。
>data(iris)#鸢尾花数据集>dim(iris)#读取iris数据集的维度数值,以“行数列数”形式展示[1]1505#说明iris数据集是150x5的二维数组
3.2 行列值引用:数据集[行值,列值]
如行值或列值仅1个数字,表示仅引用该行或列的数据
>iris[1,]#引用第1行数据
Sepal.LengthSepal.WidthPetal.LengthPetal.WidthSpecies
15.13.51.40.2setosa
>head(iris[,1],5)#引用第1列的数据,其中因数据过长,使用head()函数取前5个数字
[1]5.14.94.74.65.0
3.3 引用子矩阵
如行值或列值为组合数据,则表示引用组合行列交叉位置的数据
>iris[1:5,1:3]
Sepal.LengthSepal.WidthPetal.Length
15.13.51.4
24.93.01.4
34.73.21.3
44.63.11.5
55.03.61.4
3.4 变量名引用
(多用于二维数组中):数据集$变量名
>head(iris$Petal.Length,5)
[1]1.41.41.31.51.4
4 读取外部数据(以.csv表为例)
本节主要讲如何读取外部数据(表)(以.csv表为例)
4.1 设置工作目录
R语言中数据的输入需要设置数据读取的路径,一般将数据文件放到工作目录下,这样直接就可以通过read.table等读取数据文档(不许要设置路径)。
setwd("E:/") #设置当前工作目录为"E:/"
getwd() #读取当前工作空间的工作目录(文件读取保存路径)
>getwd()#读取当前工作空间的工作目录(文件读取保存路径)
[1]"C:/Users/ysl/Documents"
>setwd("E:/")#设置当前工作目录为"E:/"
>getwd()#再次使用getwd()函数即可查看是否设置成功
[1]"E:/"
方法二:通过R-gui菜单栏设置(文件-改变工作目录)
4.2 read.table()
#读取带分隔符的文本文件。read.table()函数是R最基本函数之一,读取带分隔符的文本/表格文件。
#Usage
read.table(file,header=FALSE,sep="",quote=""'",
dec=".",numerals=c("allow.loss","warn.loss","no.loss"),
row.names,col.names,as.is=!stringsAsFactors,
na.strings="NA",colClasses=NA,nrows=-1,
skip=0,check.names=TRUE,fill=!blank.lines.skip,
strip.white=FALSE,blank.lines.skip=TRUE,
comment.char="#",
allowEscapes=FALSE,flush=FALSE,
stringsAsFactors=default.stringsAsFactors(),
fileEncoding="",encoding="unknown",text,skipNul=FALSE)
read.csv(file,header=TRUE,sep=",",quote=""",
dec=".",fill=TRUE,comment.char="",...)
read.csv2(file,header=TRUE,sep=";",quote=""",
dec=",",fill=TRUE,comment.char="",...)
read.delim(file,header=TRUE,sep=" ",quote=""",
dec=".",fill=TRUE,comment.char="",...)
read.delim2(file,header=TRUE,sep=" ",quote=""",
dec=",",fill=TRUE,comment.char="",...)
常用参数的说明如下:
(1)file:file是一个带分隔符的ASCII文本文件。①绝对路径或者相对路径。一定要注意,在R语言中是转义符,所以路径分隔符需要写成"\"或者“/”。所以写成“C:\myfile\myfile.txt”或者“C:/myfile/myfile.txt”即可。②使用file.choose(),弹出对话框,自动选择文件位置。例如:read.table(file.choose(),...)。
(2)header:一个表示文件是否在第一行包含了变量的逻辑型变量。如果header设置为TRUE,则要求第一行要比数据列的数量少一列。
(3)sep分开数据的分隔符。默认sep=""。read.table()函数可以将1个或多个空格、tab制表符、换行符或回车符作为分隔符。常见空白分隔符有:空格,制表符,换行符
sep=””;sep=“ ”;sep=“ ”
(4)stringsAsFactors逻辑值,标记字符向量是否需要转化为因子,默认是TRUE。stringsAsFactors=F意味着,“在读入数据时,遇到字符串之后,不将其转换为factors,仍然保留为字符串格式”。
(5)encoding设定输入字符串的编码方式。
#读取txt文档
>df<-read.table("data.txt")
>df
V1V2
1xy
212
334
456
>df<-read.table("data.txt",header=T)
>df
xy
112
234
356
#样式1:直接读取数据
>df<-read.table("data.csv")#直接读取数据
>head(df)
V1
1ID,Sepal.Length,Sepal.Width,Petal.Length,Petal.Width,Species
21,5.1,3.5,1.4,0.2,setosa
32,4.9,3,1.4,0.2,setosa
43,4.7,3.2,1.3,0.2,setosa
54,4.6,3.1,1.5,0.2,setosa
65,5,3.6,1.4,0.2,setosa
#样式2:读数+首行表头
>df<-read.table("data.csv",header=T)#读数+首行表头
>head(df)
ID.Sepal.Length.Sepal.Width.Petal.Length.Petal.Width.Species
11,5.1,3.5,1.4,0.2,setosa
22,4.9,3,1.4,0.2,setosa
33,4.7,3.2,1.3,0.2,setosa
44,4.6,3.1,1.5,0.2,setosa
55,5,3.6,1.4,0.2,setosa
66,5.4,3.9,1.7,0.4,setosa
#样式3:读数+首行表头+","逗号分割
>df<-read.table("data.csv",header=T,sep=",")
#读数+首行表头+","逗号分割
>head(df)
IDSepal.LengthSepal.WidthPetal.LengthPetal.WidthSpecies
115.13.51.40.2setosa
224.93.01.40.2setosa
334.73.21.30.2setosa
444.63.11.50.2setosa
555.03.61.40.2setosa
665.43.91.70.4setosa
>summary(df)
IDSepal.LengthSepal.WidthPetal.Length
Min.:1.00Min.:4.300Min.:2.000Min.:1.000
1stQu.:38.251stQu.:5.1001stQu.:2.8001stQu.:1.600
Median:75.50Median:5.800Median:3.000Median:4.350
Mean:75.50Mean:5.843Mean:3.057Mean:3.758
3rdQu.:112.753rdQu.:6.4003rdQu.:3.3003rdQu.:5.100
Max.:150.00Max.:7.900Max.:4.400Max.:6.900
Petal.WidthSpecies
Min.:0.100setosa:50
1stQu.:0.300versicolor:50
Median:1.300virginica:50
Mean:1.199
3rdQu.:1.800
Max.:2.500
#样式4:读数+首行表头+","逗号分割+字符转因子factor
>df<-read.table("data.csv",header=T,sep=",",stringsAsFactor=T)
##读数+首行表头+","逗号分割+字符转因子factor
>head(df)
IDSepal.LengthSepal.WidthPetal.LengthPetal.WidthSpecies
115.13.51.40.2setosa
224.93.01.40.2setosa
334.73.21.30.2setosa
444.63.11.50.2setosa
555.03.61.40.2setosa
665.43.91.70.4setosa
#请注意species结果与样式3中结果的差异
>summary(df)
IDSepal.LengthSepal.WidthPetal.Length
Min.:1.00Min.:4.300Min.:2.000Min.:1.000
1stQu.:38.251stQu.:5.1001stQu.:2.8001stQu.:1.600
Median:75.50Median:5.800Median:3.000Median:4.350
Mean:75.50Mean:5.843Mean:3.057Mean:3.758
3rdQu.:112.753rdQu.:6.4003rdQu.:3.3003rdQu.:5.100
Max.:150.00Max.:7.900Max.:4.400Max.:6.900
Petal.WidthSpecies
Min.:0.100setosa:50
1stQu.:0.300versicolor:50
Median:1.300virginica:50
Mean:1.199
3rdQu.:1.800
Max.:2.500
4.3 read.csv()
#读取.csv格式数据,read.table的一种特定应用。read.csv()读取逗号分割数据文件,read.table()的一种特定应用。默认逗号分割,header=T,stringsAsFactor=T
df<-read.csv("data.csv")#等价与下df<-read.table("data.csv",header=T,sep=",",stringsAsFactor=T)df<-read.table("data.csv",header=T,sep=",",stringsAsFactor=T)#第一行和第二行等价
read.csv(file,header=TRUE,sep=",",quote=""",
dec=".",fill=TRUE,comment.char="",...)
#实例
>df<-read.csv("data.csv")
#相当于df<-read.table("data.csv",header=T,sep=",",stringsAsFactor=T)
>head(df)
IDSepal.LengthSepal.WidthPetal.LengthPetal.WidthSpecies
115.13.51.40.2setosa
224.93.01.40.2setosa
334.73.21.30.2setosa
444.63.11.50.2setosa
555.03.61.40.2setosa
665.43.91.70.4setosa