P1 【03期线下课程】01.介绍R语言及Rstudio编辑器
视频地址:https://www.bilibili.com/video/av25643438?p=1
P2 【03期线下课程】02.R语言基础变量讲解
视频地址:https://www.bilibili.com/video/av25643438?p=2
P3【03期线下课程】03.外部数据导入导出
视频地址:https://www.bilibili.com/video/av25643438?p=3
#从文件读入数据
a=read.table("SraRunTable.txt",
sep = '\t',
header = T)
b=read.table("GSE172215_series_matrix.txt.gz",
sep = '\t',
comment.char = '!',
header = T)
#把数据写到文件
write.csv(b,"GSE172215_series_matrix.csv")
write.csv(b,"GSE172215_series_matrix.csv",
row.names = F) #去掉行名(第一列)
write.table(b,"tmp.csv",sep = ',')
d=read.csv("GSE172215_series_matrix.csv")
rownames(b)=b[,1] #设置b的行名
b=b[,-1] #删除b的第1列
b=log2(b)
pheatmap::pheatmap(b[1:10,])
save(b,file='b_input.Rdata')
load(file='b_input.Rdata')
P4【03期线下课程】04.中级变量操作
视频地址:https://www.bilibili.com/video/av25643438?p=4
a=read.table("SraRunTable.txt",
sep = '\t',
header = T)
sort(a$Mbases,decreasing = T)[1] # a$Mbases的最大值
max()
min()
fivenum()
a$MBases < 5000
b <- a[a$Mbases<5000,]
boxplot(a$Mbases~a$Assay_Type)
wes <- a[a$Assay_Type == 'WXS',]
rna <- a[a$Assay_Type == 'RNA-Seq',]
b=read.table("GSE172215_series_matrix.txt.gz",
sep = '\t',
comment.char = '!',
header = T)
rownames(b)=b[,1]
b=b[,-1]
b=log2(b)
as.numeric(b[1,])
mean(as.numeric(b[1,]))
mean(as.numeric(b[2,]))
#循环
#需求:求行平均值
header(rowMeans(b))
for (i in 1:nrow(b)) {
print(mean(as.numeric(b[i,])))
}
apply(b,1,function(x){
mean(x)
})#第2个参数,对行处理为1,对列处理为2
#需求:求每行最大值
for (i in 1:nrow(b)) {
print(max(as.numeric(b[i,])))
}
apply(b,1,function(x){
max(x)
apply(b,1,max)
rowMax = function(x){
apply(x,1,max)
}
rowMax(b)
#需求:
for (i in 1:nrow(b)) {
x <- as.numeric(b[i,])
y <- x[1]+x[2]-x[3]+x[4]-x[5]+x[6]
jimmy <- function(b){
for (i in 1:nrow(b)) {
x <- as.numeric(b[i,])
y <- x[1]+x[2]-x[3]+x[4]-x[5]+x[6]
print(y)
}
}
jimmy(b)
cg=names(sort(apply(b,1,sd),decreasing = T)[1:50])
pheatmap::pheatmap(b[1:50],)
sample(1:nrow(b),50)
pheatmap::pheatmap(b[sample(1:nrow(b),50)],)
pheatmap::pheatmap(b[cg],)
P5【03期线下课程】05.热图
视频地址:https://www.bilibili.com/video/av25643438?p=5
a1=rnorm(100)
dim(a1)=c(5,20)
a2=rnorm(100)+2
dim(a2)=c(5,20)
library(pheatmap)
pheatmap(a1,cluster_rows = F, cluster_cols =F)
pheatmap(cbind(a1,a2))
pheatmap(cbind(a1,a2), cluster_cols =F)
b <- cbind(a1,a2)
b <- as.data.frame(b)
names(b) <-c(paste('a1',1:20,sep='_'),paste('a2',1:20,sep='_'))
paste('a1',1:20,sep='_')
pheatmap(b, cluster_cols =F)
#pheatmap参数,scale
tmp=data.frame(group=c(rep('a1',20),rep('a2',20)))
rownames(tmp)<-colnames(b)
pheatmap(b,annotation_col=tmp)
pheatmap(cbind(a1,a2),show_rownames=F,show_colnames=F)
#真实数据
rm(list = ls())
load('TCGA-KIRC-miRNA-example.Rdata')
library(pheatmap)
expr[1:4,1:4]
expr=t(scale(t(log2(expr+1))))
pheatmap(expr,show_rownames = F, show_colnames = F)
table(substr(colnames(expr),14,15))
group_list=ifelse(substr(colnames(expr),14,15)!='11','tumor','normal')
table(group_list)
annotation_col <- data.frame(group_list = group_list)
rownames(annotation_col) <- colnames(expr)
pheatmap(expr,show_rownames=F , show_colnames = F,
annotation_col = annotation_col)
P6【03期线下课程】06.选取差异明显的基因的表达量矩阵绘制热图
视频地址:https://www.bilibili.com/video/av25643438?p=6
rm(list =ls())
options(stringAsFactors = F)
load(file = 'step1-output.Rdata')
dat=dat[,-3]
group_list=group_list[-3]
dat[1:4,1:4]
dim(dat)
dat=log2(dat)
dat[1:4,1:4]
d_h <- function(dat,group_list){
cg=names(tail(sort(apply(dat,1,sd)),1000))
library(pheatmap)
pheatmap(dat[cg,],show_colnames=F,show_rownames=F)
n=t(scale(t(dat[cg,])))
n[n>2]=2
n[n<-2] = -2
pheatmap(n,show_colnames=F,show_rownames=F)
ac=data.frame(g=group_list)
rownames(ac)=colnames(n)
pheatmap(n,show_colnames=F,show_rownames=F,
annotation_col = ac)
}#包装成函数
d_h(dat,group_list)
dat <- dat[,-3]
group_list <- group_list[-3]
d_h(dat,group_list)
P7 【03期线下课程】07.id转换
P8 【03期线下课程】08.任意基因任意癌症表达量分组的生存分析
P9 【03期线下课程】09.任意基因任意癌症表达量和临床性状关联
P10 【03期线下课程】10.表达矩阵的样本的相关性
P11 【03期线下课程】11.芯片表达矩阵下游分析
P12 【03期线下课程】12.RNA-seq表达矩阵差异分析
P13 【03期线下课程】R语言小作业-10题的答案
P14 R-1-学习资源介绍
P15 R-2-与excel的区别
P16 R-3-简单统计及数学函数
P17 R-4-基础语法
P18 R-5-高级数据处理技巧
P19 R-6-绘图该如何学
P20 R-7-作业
P21 【无声动画】Windows电脑安装R以及Rstudio
P22 【无声动画】R-0-史上最贴心R包安装示范
P23 【生信技能树】系统性的入门R语言
P24 【生信技能树】R语言可视化基础
P25 【生信技能树】R语言可视化进阶
P26 【生信技能树】用shiny写一个计算器
P27 【生信技能树】R语言操作图片
P28 【生信技能树】R语言写爬虫
P29 【生信技能树】用R语言爬取生信软件列表到思维导图
P30 【生信技能树】用R语言进行ID转换
P31 【生信技能树】多个差异分析结果直接量量取交集并集
P32 【生信技能树】用R语言进行多个同样的行列式文件合并
P33 #福利# 使用rmarkdown制作转录组差异分析结题报告