{"title": "R\u8bed\u8a00\u521d\u5b66\u7b14\u8bb0", "update_time": "2015-09-23 22:54:05", "tags": "R", "pid": "298", "icon": "default.png"}
## 搭建环境 R解释器 http://www.r-project.org/ 推荐的IDE环境是 RStuido https://www.rstudio.com/ ## 变量赋值 变量赋值方式推荐使用 `<-` 或`->`,当然也可以用`=` ## 设置R的语言为英文 ``` vim .Renviron 添加如下设置 LANGUAGE='en' ``` ## 向量 向量中的数据类型必须是统一的,比如全部是数字或全部是字符串 变量赋值 ``` x <- c(1,2,3,4,5) #数字组成的向量 str <- c('Hello','World') #字符串组成的向量 x <- 1:12 #1:12表示 产生1到12的数字序列作为向量 ``` 向量取值 ``` x[1] #表示取第一个值 x[3:5] #表示取第第3到第5个值 x[-2] #表示取除了第2个外的所有向量值 ``` ## 数组 相当于多维的向量,向量可以理解为一维的;而数组是多维的。数据中的数据类型也必须是统一的 数组赋值 ``` > x <- 1:12 > ax <- array(data=x,dim=c(3,4)) > ax [,1] [,2] [,3] [,4] [1,] 1 4 7 10 [2,] 2 5 8 11 [3,] 3 6 9 12 ``` 数组取值 ``` ax[2,2] #按行列取值,取第二行第二列 ax[,2] #按列取值,取第二列 ax[2,] #按行取值,取第一行 ``` ## 数据框 类似Excel的数据格式。每一列的数据类型可以不一致,但是列的长度必须一致 数据框赋值 ``` #建立向量 day <- c('20140425','20140426','20140427') pm <- c(100,90,60) day_pm <- data.frame(day,pm) #day_pm的样子如下 > day_pm day pm 1 20140425 100 2 20140426 90 3 20140427 60 ``` 数据框取值 ``` #按行列取值 > day_pm[1,1] [1] 20140425 Levels: 20140425 20140426 20140427 #按行取值 > day_pm[1,] day pm 1 20140425 100 #按列取值,使用$指定特定的列 day_pm$pm day_pm[day_pm$pm<100,] #取出pm的值小于100的 ``` ## 函数 函数一般接受向量作为参数,输出的结果一般为向量 比如log()函数,我们输入参数x,x是刚才赋值`x <- c(1,2,3,4,5)` ``` > log(x) [1] 0.0000000 0.6931472 1.0986123 1.3862944 1.6094379 ``` ## FAQ 如何查看一个变量的类型? R语言是面向对象的语言,所有变量都是一个对象。对于一个对象我们可以通过以下函数观察对象的通用属性 ``` class(x) #查看变量的类型 attributes(x) #查看变量的属性 str(x) #以字符串的形式展示变量的基本信息 ``` ## R语言学习资料 * http://www.ats.ucla.edu/stat/r/