前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >全套MeRIP-seq文章图表复现代码

全套MeRIP-seq文章图表复现代码

作者头像
生信技能树
发布2021-04-29 09:30:59
8520
发布2021-04-29 09:30:59
举报
文章被收录于专栏:生信技能树

前面我们分享了 跟着Nature Medicine学MeDIP-seq数据分析,数据和代码都是公开,这个2G的压缩包文件,足以学习3个月,写60篇教程。

这里面的MeDIP-seq指的是DNA,那么MeRIP-seq其实就是RNA水平的又叫做m6a测序,恰好看到了咱们的表观微信交流群我们的生信技能树优秀转录组讲师在分享全套MeRIP-seq文章图表复现代码,我借花献佛整理一下分享给大家:

这个代码关联到了两个 文章,首先是Cell Rep. 2021 Mar ,标题是:《Post-transcriptional regulation of antiviral gene expression by N6-methyladenosine》,然后是文章《Limits in the detection of m6A changes using MeRIP/m6A-seq》

数据在:https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE155413 , 是12个样品:

代码语言:javascript
复制
GSM4704026 Ifn input rep1
GSM4704027 Ifn input rep2
GSM4704028 Ifn input rep3
GSM4704029 Ifn meRIP rep1
GSM4704030 Ifn meRIP rep2
GSM4704031 Ifn meRIP rep3
GSM4704032 Mock input rep1
GSM4704033 Mock input rep2
GSM4704034 Mock input rep3
GSM4704035 Mock meRIP rep1
GSM4704036 Mock meRIP rep2
GSM4704037 Mock meRIP rep3

这个实验设计是超级严谨了,其实就Ifn处理前后的两个组,但是每个组都有3个重复,而且是非常严格的MeRIP和 input方便找peaks。

最重要的是,提供了全套MeRIP-seq 图表复现代码在GitHub:https://github.com/al-mcintyre/merip_reanalysis_scripts 这个也是接近2G的压缩包!

首先是文章的重要的图表绘制的R代码 :

代码语言:javascript
复制
  2.7K Jan  9  2020 plot_fig1b.R
  7.6K Jan  9  2020 plot_fig2.R
   20K Jan  9  2020 plot_fig3.R
  4.0K Jan  9  2020 plot_fig3_helper.R
   11K Jan  9  2020 plot_fig4.R
  4.7K Jan  9  2020 plot_fig4_mergedpeaks.R
  3.6K Jan  9  2020 plot_fig5.R
  6.4K Jan  9  2020 plot_sfig1a.R
  4.4K Jan  9  2020 plot_sfig1g.R
  1.0K Jan  9  2020 plot_sfig2.R
  368B Jan  9  2020 rhelper.R
  9.9K Jan  9  2020 run_metdiff_peakcaller.R

然后是具体数据分析的Linux上游的shell脚本:

代码语言:javascript
复制
  830B Jan  9  2020 merged_peak_analysis.sh
  1.5K Jan  9  2020 plot_fig1a.sh
  1.3K Jan  9  2020 plot_fig1bc.sh
  3.8K Jan  9  2020 plot_fig2.sh
  926B Jan  9  2020 plot_fig4prep.sh
  931B Jan  9  2020 plot_sfig2.sh
  7.9K Jan  9  2020 run_full_analysis.sh
  1.3K Jan  9  2020 run_kallisto.sh
  921B Jan  9  2020 run_macs2.2.sh
  3.1K Jan  9  2020 run_star.1.sh

研究者自己擅长python,所以也有一些配套的python小脚本:

代码语言:javascript
复制
  4.4K Jan  9  2020 get_most_highly_expressed.py
  3.4K Jan  9  2020 plot_fig1a_counts_vs_expression.py
  799B Jan  9  2020 plot_fig1a_summary.py
  1.4K Jan  9  2020 plot_fig1c_replicate_overlap.py

图的颜值不错:

很早以前我就在《生信技能树》发布过教程:新的ngs流程该如何学习(以CUT&Tag 数据处理为例子),提到了我自己是不太可能去把所有的ngs流程全部录制视频的,只能说是更好的传达学习方法给到大家。其实如果你看过我表观组学,比如《ChIP-seq数据分析》《ATAC-seq数据分析》 就会发现其实这个m6A数据处理大同小异的,当然了,肯定是会有一些细微差异是需要注意的。具体数据分析的Linux上游的shell脚本看研究者的GitHub :

代码语言:javascript
复制

  7.9K Jan  9  2020 run_full_analysis.sh
  1.3K Jan  9  2020 run_kallisto.sh
  921B Jan  9  2020 run_macs2.2.sh
  3.1K Jan  9  2020 run_star.1.sh

可以看到首先是 trimmomatic 这个java软件进行fastq文件的质量控制:

代码语言:javascript
复制
 java -jar trimmomatic-0.36.jar PE -phred33 $PRETRIM1 $PRETRIM2 $FASTQ1 fastqs/${f}_R1_unpaired.fq.gz $FASTQ2 fastqs/${f}_R2_unpaired.fq.gz ILLUMINACLIP:TruSeq3-PE.fa:2:30:10 LEADING:3 TRAILING:3 SLIDINGWINDOW:4:15 MINLEN:15

然后是STAR这个软件进行比对:

代码语言:javascript
复制
STAR --genomeDir $STAR_INDEX --runThreadN $NUM_THREADS --readFilesIn fastqs/${f}_R1.fastq.gz fastqs/${f}_R2.fastq.gz --outFilterMultimapNmax 1 --readFilesCommand zcat --outFileNamePrefix ${f}.star. --genomeLoad LoadAndKeep  --outSAMstrandField intronMotif

还有kallisto这个软件进行定量

代码语言:javascript
复制
  kallisto quant -t $NUM_THREADS -i $IDX -o kallisto_results/$SAMPLE.kallisto fastqs/${COND}_input_${REP}_R1.trim.fastq.gz fastqs/${COND}_input_${REP}_R2.trim.fastq.gz

到目前为止,其实都是跟转录组流程类似,但是因为有 macs2软件进行 callpeak 代码是:

代码语言:javascript
复制
macs2 callpeak -t alignments/${COND}_IP_${REP}.star.sorted.bam -c alignments/${COND}_input_${REP}.star.sorted.bam --nomodel --extsize $FRAGLEN -g 100e6 -n macs2_results/${COND}_${REP}.macs2 -f BAM --verbose 3

这一切代码能成功运行的前提是Linux基础,再怎么强调生物信息学数据分析学习过程的计算机基础知识的打磨都不为过,我把它粗略的分成基于R语言的统计可视化,以及基于Linux的NGS数据处理

把R的知识点路线图搞定,如下:

  • 了解常量和变量概念
  • 加减乘除等运算(计算器)
  • 多种数据类型(数值,字符,逻辑,因子)
  • 多种数据结构(向量,矩阵,数组,数据框,列表)
  • 文件读取和写出
  • 简单统计可视化
  • 无限量函数学习

Linux的6个阶段也跨越过去 ,一般来说,每个阶段都需要至少一天以上的学习:

  • 第1阶段:把linux系统玩得跟Windows或者MacOS那样的桌面操作系统一样顺畅,主要目的就是去可视化,熟悉黑白命令行界面,可以仅仅以键盘交互模式完成常规文件夹及文件管理工作。
  • 第2阶段:做到文本文件的表格化处理,类似于以键盘交互模式完成Excel表格的排序、计数、筛选、去冗余,查找,切割,替换,合并,补齐,熟练掌握awk,sed,grep这文本处理的三驾马车。
  • 第3阶段:元字符,通配符及shell中的各种扩展,从此linux操作不再神秘!
  • 第4阶段:高级目录管理:软硬链接,绝对路径和相对路径,环境变量。
  • 第5阶段:任务提交及批处理,脚本编写解放你的双手。
  • 第6阶段:软件安装及conda管理,让linux系统实用性放飞自我。
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-04-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信技能树 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档