R包加载
先安装
install.packages
BiocManager::install
再加载
library()
require()
dplyr基础函数
#mutate 新增列
mutate(test, new = Sepal.Length * Sepal.Width)
#select 按列来筛选
select(test,1)
select(test, Petal.Length, Petal.Width)
#filter筛选行
filter(test, Species == "setosa")
#arrange按照某一列进行排列
arrange(test, Sepal.Length)#默认从小到大排序
summarise(test, mean(Sepal.Length), sd(Sepal.Length))
select函数不可以用名字筛选
filter函数可以用名字筛选
因为select是筛选列 filter是行?
group_by
放的位置很重要!
dplyr实用技能
tydyverse包里有 8个子包
- ggplot2,用于数据可视化
- tibble,用于形成便于数据处理的数据框,数据类型定义
- tidyr,用于数据整洁,数据清理
- readr,用于读入R 格式数据,数据读取
- dplyr,用于数据操纵,数据整理
- stringr,用于处理字符串数据
- forcats,用于处理因子数据
- lubridate, 用于处理日期和时间数据(没在tidyverse中)
%>%的作用
anscombe_tidy <- anscombe %>%mutate(observation = seq_len(n()))
以上代码等价于:
anscombe_tidy=mutate(anscombe,observation = seq_len(n()))
关系处理
#内连 (取交集)
inner_join(x,y, by = )
#左连(选第一个为参照,取第二个,要注意顺序!!!)
left_join(x,y, by =)
#全连(取并集)
full_join (x,y, by =)
#半连接 (返回能够与y表匹配的x表所有记录semi_join)
semi_join(x = test1, y = test2, by = 'x')
#反连接
anti_join(x = test2, y = test1, by = 'x')
#简单合并
bind_cols()
bind_rows()
半连接和左连接的区别是
左连接 都会返回
半连接 只返回有效值