R 语言学习系列参考书籍:《R语言实战》。
(一)入门
1. 工作空间:
getwd()
:查看当前工作目录
setwd("mydirectory")
:设定当前工作目录为mydirectory
ls()
:列出当前工作空间中的对象
savehistory(" myfile")
:保存命令历史到文件myfile中
save.image(" myfile")
:保存工作空间到文件myfile中
q()
:退出R
2. 包
install.packages()
:安装包
library()
:载入包
3. 数据结构
(1) 向量
(2) 矩阵
(3) 数组
(4) 数据框
数据框可通过函数data.frame()
创建。
选取数据框中的元素:
$
用来选取一个给定数据框中的某个特定变量:
可以联合使用函数attach()
和detach()
,或者单独使用函数with()
来简化代码:
函数attach()
可将数据可添加到R的搜索路径中;
函数detach()
将数据框从搜索路径中移除;
代码(1)
代码(2)
代码(3)
(5) 因子
(6) 列表
4. 数据的输入
(1) 使用键盘输入数据
(2) 从带分隔符的文本文件导入数据
5. 数据集的标注
(1)变量标签
(2) 值标签
这里levels
代表变量的实际值,而labels
表示包含了理想值标签的字符型向量。
(二)图形初阶
1. 使用图形
保存到当前工作目录:
2. 一个简单的例子
输入数据:
创建一幅描述药物A的剂量和响应关系的图形:
plot()
是R中为对象作图的一个泛型函数
3. 图形参数
上例中,使用实心三角而不是空心圆圈作为点的符号,而且用虚线代替实线连接这些点:
lay = 2
: 将默认的线条类型修改为虚线
pct = 17
: 将默认的点的符号改为实心三角
(1) 符号和线条
参数描述:
pch
:绘制点使用的符号
cex
:符号的大小
lty
:线条类型
lwd
:线条宽度
示例:
(2) 颜色
(3) 文本属性
(4) 图形尺寸和边界尺寸
(三)基本数据管理
1. 创建leadership数据框
2. 创建新变量
法(1):
法(2):
法(3):
3. 变量的重编码
(1) 将99岁的年龄值重编码为缺失值
(2) 创建变量agecat (Young, Middle, Aged, Elder)
这段代码可以写成更紧凑的:
4. 变量的重命名
(1) 调用交互式编辑器进行变量重命名:
(2) 以编程方式修改变量名,使用 rename() 函数:
(3) 通过names()函数来重命名变量:
5. 缺失值
(1) 检测缺失值是否存在:
(2) 重编码某些值为缺失值:
(3) 使用na.rm=TRUE
,在计算之前移除缺失值并使用剩余值计算:
(4) 使用na.omit()
,移除所有含有缺失值的观测(行删除,listwise deletion)
na.omit()
可以删除所有含有缺失数据的行:
6. 日期值
日期值通常以字符串的形式输入到R中,然后转化为以数值形式存储的日期变量,函数as.Date()
用于执行这种转化,其语法是
使用函数as.character()
将日期转换成字符型变量:
7. 类型转换
名为is.datatype()
这样的函数返回TRUE
或FALSE
,而as.datatype()
这样的函数则将其参数转换为对应的类型。
8. 数据排序
使用order()
函数对一个数据框进行排序
9. 数据集的合并
(1) 添加列
要横向合并两个数据框,使用merge()
函数,相当于inner join
:
如果直接横向合并两个矩阵或数据框,并且不需要指定一个公共索引,那么可以直接使用cbind()
函数:
(2) 添加行
要横向合并两个数据框,使用rbind()
函数:
10. 数据集取子集
(1) 选入(保留)变量
(2) 剔除(丢弃)变量
(3) 选入观测
(4) subset()函数
(5) 随机抽样
11. 使用SQL语句操作数据框
sqldf
包是R中一个实用的数据管理辅助工具。