研究最热门的基因是什么
在 NCBI的ftp里面关于人的一些基因信息, 在 :ftp://ftp.ncbi.nlm.nih.gov//gene 下载即可!
其中 gene2pubmed.gz 这个是NCBI的entrez ID号对应着该基因发表过的文章的ID号
链接是:ftp://ftp.ncbi.nlm.nih.gov//gene/DATA/gene2pubmed.gz
这个 gene2pubmed.gz 约50M,网络后的话,几分钟就下载OK了。
整理数据文件
简单的使用bing搜索一下关键词:word clound in r ,就可以找到解决方案,第一个链接就是:http://www.sthda.com/english/wiki/text-mining-and-word-cloud-fundamentals-in-r-5-simple-steps-you-should-know,代码分成5个步骤。
Step 1: Create a text file Step 2 : Install and load the required packages Step 3 : Text mining Step 4 : Build a term-document matrix Step 5 : Generate the Word cloud
一般来说,会R基础的朋友们很容易看懂,如果你还不会R语言,建议看:
把R的知识点路线图搞定,如下:
了解常量和变量概念 加减乘除等运算(计算器) 多种数据类型(数值,字符,逻辑,因子) 多种数据结构(向量,矩阵,数组,数据框,列表) 文件读取和写出 简单统计可视化 无限量函数学习
核心代码就是wordcloud函数,但是这个wordcloud函数要求的输入数据就需要认真做出来。
library(data.table)
a=fread('gene2pubmed.gz',data.table = F)
head(a)
# https://www.uniprot.org/taxonomy/9606
a=a[a$`#tax_id`==9606,]
library("tm")
library("SnowballC")
library("wordcloud")
library("RColorBrewer")
tb=as.data.frame(table(a$GeneID))
head(tb)
tb=tb[order(tb$Freq,decreasing = T),]
tb=head(tb,100)
colnames(tb)[1]='gene_id'
set.seed(1234)
如下所示:
> head(tb)
gene_id Freq
5608 7157 10251
5580 7124 5966
1550 1956 5929
5827 7422 4771
2778 3569 4746
292 348 4544
可以看到,关联到pubmed文献基因最多的是 7157和 7124,当然了,这个时候它仍然是 Entrez Gene
2005 https://pubmed.ncbi.nlm.nih.gov/15608257/ 2007 https://www.ncbi.nlm.nih.gov/pmc/articles/PMC1761442/ 2011 https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3013746/
但是已经可以绘图了
第一次绘图
绘图是R语言里面最简单但是如果要深入又最折磨人的,比如这个词云,就一个函数即可:
wordcloud(words = tb$gene_id, freq = tb$Freq, min.freq = 1,
max.words=200, random.order=FALSE, rot.per=0.35,
colors=brewer.pal(8, "Dark2"))
可以看到, 基因根据其热门程度,以不同的大小显示出来了:
第二次绘图
因为前面的基因是 Entrez Gene,绝大部分人是没办法一目了然的去认识它,比如这个时候虽然知道研究最多的是7157和 7124 这两个基因
所以,我们需要理所当然的做一个ID转换,如下所示的代码:
library(org.Hs.eg.db)
ids=toTable(org.Hs.egSYMBOL)
head(ids)
tbs=merge(ids,tb,by='gene_id')
wordcloud(words = tbs$symbol, freq = tbs$Freq, min.freq = 1,
max.words=200, random.order=FALSE, rot.per=0.35,
colors=brewer.pal(8, "Dark2"))
重新出图如下:
是不是现在就顺眼很多了呢,不知道这个词云里面有没有你正在研究的基因呢?
更多拓展作为学徒作业
这个 gene2pubmed.gz 约50M文件里面的信息太丰富了,有1333万行信息,仅仅是人类就有159万行的文献,涉及到3万9千的基因数量,绝大部分基因都是如过眼云烟,很少人去研究它。
我们的TP53能拔得头彩也是不容易,但它也有自己的发展规律,希望大家可以更细致去探索 ftp://ftp.ncbi.nlm.nih.gov//gene 里面的文件。
比如这样的top 100的基因词云,其实可以做出来最近30年的变化规律,只需要你去找到文献的时间年份信息,进行拆分,每个年份独立统计绘图即可。
完成我的100个学徒作业
我先列出来前面的71个题目,目录如下:
生信编程直播课程优秀学员作业展示1 生信编程直播课程优秀学员学习心得及作业展示3 生信编程直播课程优秀学员作业展示2 给学徒的GEO作业 这个WGCNA作业终于有学徒完成了! 上次说的gmt函数(学徒作业) 拖后腿学徒居然也完成作业,理解RNA-seq数据分析结果 肿瘤外显子视频课程小作业 ChIPseq视频课程小作业 Agilent芯片表达矩阵处理(学徒作业) 学徒作业:TCGA数据库单基因gsea之COAD-READ 学徒作业-在CCLE数据库里面根据指定基因在指定细胞系里面提取表达矩阵 学徒作业-指定基因在指定组织里面的表达量热图 学徒作业-我想看为什么这几个基因的表达量相关性非常高 学徒作业:给你8个甲基化探针, 你在tcga数据库进行任意探索 学徒作业-根据我的甲基化视频教程来完成2015-NPC-methy-GSE52068研究 RNA芯片和测序技术的比较(学徒作业) 学徒作业-单基因的tcga数据挖掘分析 ATCC终于出来了organoids资源 拿到7个DDR通路的基因集-学徒作业 绘图本身很简单但是获取数据很难 都说lncRNA只有部分具有polyA尾结构,请证明 学徒作业-hisat2+stringtie+ballgown流程 学徒任务-探索DNA甲基化的组织特异性 用WES和RNA-Seq数据提取到的somatic SNVs不一致 《GEO数据挖掘课程》配套练习题 一个甲基化芯片数据被挖掘好几次(学徒作业) 二十年前做科研你只需要检测一些基因在一些癌症细胞系表达量情况即可 仅提供bam文件的RNA-seq项目重新分析 乳腺癌和结直肠癌的基因分型居然可以应用于前列腺癌 我教程的第一个外国读者 10个细胞系仅1个表达你的基因 根据CNV信号对细胞系分组后看表达量差异(这就是多组学的一种方式) 狗也有乳腺癌(也有人研究) 怎么样成功看到影响病人生存的隐藏因素呢 把基因数量搞小的数据挖掘想法是好的但可能不现实 《GEO数据挖掘课程》配套练习题粗浅的答案 RNA-seq的3的差异分析R包你选择哪个 不同样本的WES数据分析时多比对区域是否有差异 能重复出来图表,却不知自己正确与否? 10X的单细胞转录组原始数据也可以在EBI下载 文章的最高境界-让人无法重复出来??? 单细胞RT-PCR表达量数据也可以差异分析 10X单细胞转录组的测序数据量这么少是为什么 什么,ENA和SRA数据库存放的单细胞转录组测序数据并不一致啊? SNV和INDEL仅仅是比较数量吗?(学徒作业) 哦别做梦了! BRCA1和BRCA2基因敲除小鼠的单细胞转录组 凭什么定位到UBR5基因 为何要劳民伤财做同样的数据 张泽民团队的单细胞研究把T细胞分的如此清楚 最适合ChIP-seq实战的文献推荐 常规转录差异建议都加上一个转录因子数据 并不一定要单细胞转录组才能看肿瘤免疫微环境个细胞亚群比例 为什么这个研究不使用inferCNV来判定细胞恶性与否呢 什么时候细胞周期的分类作用大于细胞类型呢 小RNA建库测序后的数据分析-实例讲解 新的ngs流程该如何学习(以CUT&Tag 数据处理为例子) 人人都能学会的单细胞聚类分群注释 新的ngs流程该如何学习之m6A学习大纲 看看这45篇文章有啥规律 把tcga大计划的CNS级别文章标题画一个词云 如今的测序和八年前的芯片差异大吗 circRNA芯片也是同样的差异分析 拷贝数全景图聚类分群找差异 人鼠基因转换之首字母大写 带着文件夹结构的拷贝 谁说单细胞工具一定要应用于单细胞数据呢 10x单细胞表达矩阵你也敢用Excel打开 多个gsea数据集整合为什么一定要纠结批次效应 基于小鼠的基因集数据库资源
完成学徒作业,以markdown笔记的形式发到我邮箱,我会抽时间集中检查,挖掘其中足够优秀的小伙伴进行重点培养,给与更高级的学习资料或者个性化的学习指引,并且提供一定量的项目兼职测试一下你成为“数字游民”的潜力。
加油哦,我的邮箱是 jmzeng1314@163.com