数据框概括
数据框是由n个相同长度的向量按列合并的一张表,每列的数据类型可以不同。
数据框是一个特殊的list,list的每个元素都是长度相同的向量。
1  | # stringsAsFactors = FALSE,字符串不会被转换成fator类型  | 
数据框函数
数据集及包
1  | > library(nycflights13)  | 
管道函数 %>%
1  | x %>% f(y) 等价于 f(x,y)  | 
筛选行
1  | subset(flights,flights$month==1&flights$day==1)  | 
选择列
1  | # 按列的名称进行筛选,可以添加任意多个列名称  | 
增加列
1  | mutate(flights,gain =arr_delay -dep_delay,speed =distance /air_time *60)  | 
数据框整形
排序
1  | # arrange函数,默认升序  | 
重命名行名、列名
1  | # 行名称  | 
合并、拆分
reshape2:melt,dcast
1  | > head(airquality)  | 
tidyr:gather,spread
1  | # 将Solar.R,Wind,Temp三列合并为一列  | 
tidyr:unite,separate
1  | > a <- data.frame(col_name=c('a-b','d-e-f','1-2-3-4'))  | 
数据框合并
1  | merge(users,allorders,by="uid",all.x=T)  | 
分组、聚合
group_by,summarise
1  | # 根据飞机编号进行分组  | 
tapply
1  | # 多个分组变量(itemName,DATE),一个聚合变量(order_id),一个聚合函数(length)  | 
aggregate
1  | # 多个分组变量(DATE),多个聚合变量(16:22),一个聚合函数(sum)  | 
That’s all.
Happy writing!