- 镜像设置
Tool-packages 有一个cran镜像,但如果要下载bioconductor的包,是没办法用的,所以要配置一个可以下载bioconductor的镜像。
options("repos"=c(CRAN="https://mirrors.tuna.tsinghua.edu.cn/CRAN/"))
#对应清华源
options(BioC_mirror="https://mirrors.ustc.edu.cn/bioc/")
#对应中科大源
options()$repos #配置成功的话,查询结果为清华镜像
options()$Bioc_mirror #配置成功的话,查询结果为中科大镜像
但这种方法下次打开需要重新设置,所以还需要高级模式的设置
file.edit('~/.Rprofile')
#启动编辑文件
options("repos"=c(CRAN="https://mirrors.tuna.tsinghua.edu.cn/CRAN/"))
options(BioC_mirror="https://mirrors.ustc.edu.cn/bioc/")
#添加镜像,保存,退出
重启查询options,是对应的镜像
2.安装
install.packages("包“)
或者
BiocManager::install("包")
#取决于你要安装的包在哪里
3.加载
library(包)
require(包)
- dplyr五个基础函数
4.1 matate(),新增列
mutate(test, new=Sepal.Length*Sepal.Width)
4.2 select(),按列筛选
- 按列号筛选
select(test,1)
#第一列
select(test, c(1,5))
#第一列和第五列
- 按列名筛选
select(test, Sepal.Length)
select(test, Petal.Length, Petal.Width)
或者
vars<- c("Petal.Length","Petal.Width")
select(test, one_of(vars))
#筛选出vars中的向量
4.3 filter(),筛选行
filter(test, Species=="setosa")
filter(test, Species=="setosa"&Sepal.Length>5)
filter(test, Species%in%c("setosa","versicolor"))
#筛选出这两行
4.4 arrange(),按某1列或某几列对整个表格进行排序
arrange(test,Sepal.Length)
#默认从小到大排列
arrange(test, desc(Sepal.Length))
#用desc进行从大到小排列
4.5 summarise() 汇总
summarise(test, mean(Sepal.Length), sd(Sepal.Length))
#计算Sepal.Length的平均值和标准差
group_by(test, Species)
summarise(group_by(test, Species), mean(Sepal.Length), sd(Sepal.Length))
#按照Species分组,计算每组的平均值和标准差
5 dplyr 两个实用技巧
5.1 管道操作 %>%(cmd/ctr+shift+M)
test %>%
group_by(Species) %>%
summarise(mean(Sepal.Length),sd(Sepal.Length))
5.2 count统计某列的unique值
count(test,Species)
- dplyr处理关系数据
options(stringsAsFactors = F)
test1<- data.frame(x=c('b','e','f','x'),
z=c('A','B','C','D'),
stringsAsFactors = F)
test1
test2<- data.frame(x=c('a','b','c','d','e','f'),
y=c(1,2,3,4,5,6),
stringsAsFactors = F)
test2
6.1 内连
inner_join(test1, test2, by="x")
取交集
6.2 左连
left_join(test1,test2,by='x')
以test1的x为准
left_join(test2,test2,by='x')
以test2的x为准
6.3 全连
full_join(test1,test2,by='x')
取并集
6.4 半连接
semi_join(x=test1,y=test2,by='x')
返回能够与y表匹配的x表中的所有内容
6.5 反连接
anti_join(x=test2,y=test1,by='x')
返回无法与y表匹配的x表中的所有内容
anti_join(x=test1,y=test2, by='x')
注意x和y表的先后顺序非常重要,test1,2,顺序变了,结果完全相反
6.6 简单合并
test1<-data.frame(x=c(1,2,3,4),y=c(10,20,30,40))
test1
test2<-data.frame(x=c(5,6),y=c(50,60))
test2
test3<-data.frame(z=c(100,200,300,400))
test3
bind_rows(test1,test2)
bind_cols(test1,test3)
·