数据框(data frame)
数据框就是在不同的列创建不同的元素类型(包括数值型和字符型等)的数据,比矩阵的概念更为一般。
通过mydata <- data.frame()
创建:
mydata <- data.frame(col1, col2, col3,...)
其中的列向量 col1,col2,... 可以为任意类型(如字符型、数值型或逻辑型)。但值得注意的是每一列的数据必须唯一。
读取数据框中的元素
列数据读取方法
例如直接用mydata[1:2]
来读取mydata
中的第1到2列数据。那如果不知道想要读取的列是在第几列,但只知道列变量名呢?又该怎么读取呢?
读取特定变量的数据
使用$
符号,例如mydata$ages
表示的是我们要读取mydata
中的ages
变量的数据。
批量读取方法
- attach()
attach()
可以把数据框添加到R的搜索路径中,添加这个之后,可直接对变量进行操作。例如:
attach(mtcars)
summary(mpg)
plot(mpg,wt)
plot(mpg,disp)
detach(mtcars)
detach()
表示将数据框从搜索路径中移除,但并不会对mtcars
数据本身做任何处理。
2. with()
例子见下面,特点是大括号的语句仅针对你指定的数据框有效, 主要优点是不用改变搜索路径,也可以避免一些不必要的bug,比如变量重名问题。但缺点是赋值的话也只对括号内有效。若需要对全局空间赋值,应使用特殊赋值于符<<-
。
R小技巧
一行语句多行书写
交互式操作时,在行尾使用Alt+Return或者直接按Return。后者适用于按部就班式、从头到尾式书写,而前者适用于从已经写好的部分代码中插入代码的情况,例如我们想写如下语句:
with(mtcars, {
summary(mpg,disp,wt)
plot(mpg,wt)
plot(mpg,disp)
})
在已经完成部分命令如下时:
with(mtcars,{summary(mpg) 定位})
需要在“定位”处使用alt + return即可插入后续代码。
脚本环境中,直接在行尾使用return即可。
如何提交运行
完整运行
- 对已经写好的R脚本,在交互式窗口输入:
source("filename.R")
但必须保证在R的当前工作目录中,若不在,需要输入完整的路径。
2. 打开脚本后快捷运行,适用于书写过程中的运行调试,使用command + E即可运行整个脚本,效果其实和1一样。
部分运行
在写好的脚本中,选中要运行的部分代码,使用command+return即可。
查询一个包内的全部函数
方法一:使用R浏览器查询,如查询包”e1071”
help(package="e1071")
方法二:使用包内部浏览器,如下
library(help="e1071")