R语言视频笔记(内有相关资料链接)

今天我在整理电脑时,看到了几个月前写的笔记。于是补充了一些新的信息,上传上来供大家学习时参考(文末有彩蛋)。
若有不足之处,欢迎通过简信与作者联系~


有些朋友可能还不知道R语言视频在哪里,请点击https://www.bilibili.com/video/av25643438/?p=13

以后提及b站R语言视频,就是指上面这个链接里的内容了。视频的作者是生信技能树的创始人Jimmy老师。感谢Jimmy老师~~


下面贴一下Jimmy老师对于R语言入门资料的介绍:

生信基石之R语言
B站的10个小时教学视频务必看完,参考 GitHub 仓库存放的相关学习路线指导资料:https://github.com/jmzeng1314/R_bilibili
初级10个题目:http://www.bio-info-trainee.com/3793.html
中级要求是:http://www.bio-info-trainee.com/3750.html
高级要求是完成20题: http://www.bio-info-trainee.com/3415.html
统计专题30题:http://www.bio-info-trainee.com/4385.html
可视化专题30题:http://www.bio-info-trainee.com/4387.html


下面是笔记正文:

1 Rstudio

  • history,source to console
  • .libPath # 找到包的安装路径

2 基础语法

  • a= LETTERS[1:10] #取字母表的第1-10个字母
  • save(b,file="input.Rdata')
  • load(file='input.Rdata')
  • 批量注释 code菜单
  • class mode typeof
  • as.numeric(unlist(lapply(d,length)))
  • grep('RNA-Seq', a$Assay_Type)
  • index1=grep('...',a$x) #得到下标
  • index2=grepl('...',a$x) #得到TRUE/FALSE
  • b=a[index1,]
  • b=a[index2,]#两者效果相同
  • table()#count

自认为这部分笔记做得不是很好,毕竟是入门第一周时写的笔记,见谅。

3 文件读取

a=read.table('...',comment.cha='...',header=T, sep='\t')
write.csv(a,'...')
rownames(a)=a[,1]
a=a[,-1]
a=log2(a)
save(a,file='a_input.Rdata')
load=(file='a_input.Rdata')

4 中级变量操作

write.csv(a,'xx.csv',row.names = F)
write.table(a,'xx.csv',sep=',')
sort(a$x,decreasing = T)[1] 
max(a$x) 
fivenum(...) 
boxplot(y~x)

rowMeans(b)
apply(b,1,mean)

rowMax=function(x){
  apply(x,1,max)
}  

sample(1:nrow(b),50)#随机选50行
pheatmap::pheatmap(b[sample(1:nrow(b),50),])

cg=names(sort(apply(b,1,sd),decreasing = T)[1:50]) #方差最大的50个探针 

pheatmap::pheatmap(b[cg,])

5 热图

pheatmap(cbind(a1,a2),cluster_cols=F)

a1=rnorm(100)    
a2=rnorm(100)+2    
b=cbind(a1,a2)    
b=as.data.frame(b)    
names(b)=c(paste('a1',1:20,sep='_'),paste('a2',1:20,sep='_'))

library(pheatmap)    
pheatmap(b)

6 选取差异基因

d_h <- function(dat,group_list){    
cg=names(tail(sort(apply(dat,1,sd)),1000))    
n=t(scale(t(dat[cg,])))    
n[n>2]=2    
n[n<-2]=-2    
ac=data.frame((g=group_list))    
rownames(ac)=colnames(n)    
pheatmap(n,show_rownames = F, show_colnames = F,annotation_col = ac )    
} 

基础绘图及ggplot绘图语法
基础语法看书即可:http://biotrainee.com/jmzeng/markdown/basic-plot-R.html
ggplot2 练习:http://biotrainee.com/jmzeng/markdown/ggplot-in-R.html

7 id转换

#strsplit('','[.]')[[1]][1]  #取.前的字符

library(stringr)

a$ensembl_id = str_split(a$V1,'[.]',simplify = T)[,1] #分割后得到数组,取第一列  

library(org.Hs.eg.db)

g2s=toTable(org.Hs.egSYMBOL) 

g2e=toTable(org.Hs.egENSEMBL)

b=merge(a,g2e,by='ensembl_id',all.x=T)

d=merge(b,g2s,by='gene_id',all.x=T)

table(d$ensembl_id)[table(d$ensembl_id)>1] #查看重复的基因数量

d=d[order(d$V1),]

d=d[!duplicated(d$V1),] #去重复

d=d[match(a$V1,d$V1),]  #保证顺序一致

write.csv(d,'geneID2symbol.csv') 

8 生存分析

oncoLnc

9 临床关联

cbioportal

10 表达矩阵的样本相关性

去掉变化小的基因,缩小矩阵

exprSet=exprSet[apply(exprSet,1,1function(x) sum(x>1)>5,]    
exprSet=log(edgeR::cpm(exprSet)+1) #去除文库大小差异    
exprSet=exprSet[names(sort(apply(exprSet,1,mad),decreasing =T)[1:500]),]    
M=cor(log2(exprSet+1))

11 芯片表达矩阵下游分析

做好表达矩阵和分组信息,直接用limma包

12 RNA-seq表达矩阵

DESeq2 
[多个探针对应同一个基因取最大表达量探针极简代码](http://www.bio-info-trainee.com/3693.html)    
解读GEO数据存放规律及下载,一文就够    
解读SRA数据库规律一文就够    
从GEO数据库下载得到表达矩阵 一文就够    
GSEA分析一文就够(单机版+R语言版)    
根据分组信息做差异分析- 这个一文不够的    
差异分析得到的结果注释一文就够  

以上就是全部正文内容了。


下面还有一些补充材料

“ 一般来说做笔记分享,需要用markdown语法,不熟悉的人可能会害怕,但是一旦你花15分钟了解了它,你会爱上写作,相信我。
小技巧的第二节我讲的就是markdown:https://www.bilibili.com/video/av25131640
学习markdown 可以先看看 基础语法:https://mp.weixin.qq.com/s/hZj91FWIaw4cS39_jgjl7g
学习编辑器,推荐typora:https://vip.biotrainee.com/d/82-typora-markdown/10
最后是关于记笔记: https://vip.biotrainee.com/d/268
markdown效果如下:https://raw.githubusercontent.com/jmzeng1314/my_WGCNA/master/readme.md
https://github.com/jmzeng1314/my_WGCNA/blob/master/readme.md
类似于上面这样的,就是markdown
其实还有rmarkdown更方便,参考我在腾讯课堂的免费视频: https://ke.qq.com/course/274681?tuin=4926c730

上面这段话是我转载的Jimmy老师语录,供大家学习时参考。


本文开头提到的练习题答案可以在下面的路径中找到:

欢迎大家分享自己在完成生信技能树R语言作业时的笔记心得 ,https://www.jianshu.com/c/ec0be65cecb0

欢迎大家分享自己在完成生信技能树LINUX作业时的笔记心得 ,https://www.jianshu.com/c/83a3f80a964b

欢迎大家分享自己在完成生信技能树RNA-SEQ作业时的笔记心得 ,https://www.jianshu.com/c/c484fe8c3714

感兴趣的朋友可以提交自己的答案、笔记或心得,请注意提交到正确的位置哦~


最后,向大家推荐友情生信技能树的一系列干货!

  1. 生信技能树全球公益巡讲:https://mp.weixin.qq.com/s/E9ykuIbc-2Ja9HOY0bn_6g

  2. B站公益74小时生信工程师教学视频合辑(划重点!!)

    https://mp.weixin.qq.com/s/IyFK7l_WBAiUgqQi8O7Hxw

  3. 招学徒https://mp.weixin.qq.com/s/KgbilzXnFjbKKunuw7NVfw

更多学习资源,可以通过以下方式找到:

1、生信菜鸟团博客:http://www.bio-info-trainee.com/

2、简书作者生信技能树https://www.jianshu.com/u/d645f768d2d5

3、微信公众号:生信菜鸟团、生信技能树、生信星球、果子学生信、单细胞天地 等。

4、生信技能树论坛:http://www.biotrainee.com/

5、Jimmy老师的GitHub: https://github.com/jmzeng1314

更多更多学习资源,可以通过以下方式找到:

1、简书作者(排名不分先后):

徐洲更hoptop:https://www.jianshu.com/u/9ea40b5f607a

果子学生信:https://www.jianshu.com/u/9d760c7ce737

思考问题的熊:https://www.jianshu.com/u/963b2c9fee02

小洁忘了怎么分身:https://www.jianshu.com/u/c93ac360691a

刘小泽:https://www.jianshu.com/u/d7b77c171c15

Amy_Cui:https://www.jianshu.com/u/9153eddebf9c

以上这些是我认识的作者,都是生信技能树的大佬,写作质量非常高,大家可以放心关注~~!!!

2、微信公众号:小丫画图(强烈推荐给已经入门生信的朋友们!)、biobabble(这是Y叔的公众号)、生信草堂(由浙大李明定教授课题组创建),类似的还有很多,不一一推荐了。

3、Jimmy老师的知乎专栏(文献阅读笔记):https://zhuanlan.zhihu.com/c_1024966446748618752

4、新手0基础入门:http://www.bio-info-trainee.com/3727.html

还有一些资源比较零碎,日后有空再做补充。


如果你也有好的资源,欢迎评论或简信交流~~

如果你想要获得本文的md文件,可以通过简信与我联系,留下你的邮箱,并注明个人信息和用途。本文仅供学习参考,请勿通过商业渠道传播,谢谢!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,847评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,208评论 1 292
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,587评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,942评论 0 205
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,332评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,587评论 1 218
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,853评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,568评论 0 198
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,273评论 1 242
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,542评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,033评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,373评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,031评论 3 236
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,073评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,830评论 0 195
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,628评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,537评论 2 269