文章目录
1. R自带函数
2. reshape2数据重构
3. dplyr
4. tidyr
5. 字符串处理
1. R自带函数
1.1 转置
使用函数t()可对一个矩阵或数据框进行转置,对于数据框,行名将变成变量(列)名。
数列array进行维度转换 aperm
1.2 整合数据aggregate
在R中使用一个或多个by变量和一个预先定义好的函数来折叠(collapse)数据。调用格式为:
其中x是待折叠的数据对象,by饰一个变量名组成的列表,这些变量将被去掉以新的观测,而FUN则是用来计算表述性统计量的标量函数,它将被用来计算新观测中的值。
by中的变量必须在一个列表中(即使只有一个变量)。也可以在列表中为各组声明自定义的名称,例如by=list(Group.cyl=cyl,Group.gears=gear)。
1.3 apply待整理
1.4 union和intersect
1.5 合并 cbind和rbind
纵向合并数据通常用于向数据框中添加观测。
(1)rbind() :纵向合并两个数据框(数据集)
(2)cbind() :横向合并两个数据框(数据集)
注:两个数据框行(列)数必须相同。如果x中拥有y中没有的变量,在合并它们之前需做以下处理:
(1)删除dataframeA中的多余变量;
(2)在dataframeB中创建追加的变量并将其值设为NA(缺失)。
1.6 匹配合并 merge
merge效果同dplyr的join,join的效力更高。
(1)inner_join 等价于 merge(all=F)
(2)left_join 等价于 merge(all.x=T,all.y=F)
(3)right_join 等价于 merge(all.x=F,all.y=T)
(4)full_join 等价于 merge(all=T)
1.7 排除重复数据 unique
unique 函数可以去掉向量、数据框或类似数列的数据中重复的元素。
2. reshape2包
首先将数据“融合”(melt),以使每一行都是一个唯一的标识符-变量组合。然后将数据“重铸”(cast),可以使用任何函数对数据进行整合成想要的任何形状。
注:reshape包的重铸函数为cast(),reshape2包的重铸函数为dcast()和acast()
2.1融合-melt
数据集的融合是将它重构为这样一种格式:每个测量变量独占一行,行中带有要唯一确定这个测量所需的标识符变量。
2.2重铸-dcast和acast
Use?acast?or?dcast?depending on whether you want vector/matrix/array output or data frame output. Data frames can have at most two dimensions.
1.dcast——返回的结果是一个数据框
2.acast——返回的结果可以是向量、矩阵或者数组
调用格式为:
md为已融合的数据,formula描述想要的结果,是(可选的)数据整合函数。
接受的公式形如:
#p#分页标题#e#
在这个公式中,rowvar1 + rowvar2 + ...?定义了要划掉的变量集合,以确定各行的内容,而colvar1 + colvar2 + ...?则定义了要划掉的、确定各列内容的变量集合。
3. dplyr
3.1 基本操作