跟着Nature Communications学习Hisat-Trinity-PASA等分析流程

一边学习,一边总结,一边分享!

详细教程请访问:
组学分析流程

本期分析流程

  1. Hisat2-Samtools
  2. Trinity_GG_denovo
  3. PASA

本期教程文章


题目:Genomic insights into local adaptation and future climate-induced vulnerability of a keystone forest tree in East Asia

Hisat2-samtools分析流程

#!/bin/bashgenome=$1
index=${genome%.*}
rna_1_fq=`cat $2|grep 1P|sed ":a;N;s/\n/,/g;ta"` #1.fq path list
rna_2_fq=`cat $2|grep 2P|sed ":a;N;s/\n/,/g;ta"` #2.fq path list#echo $index
hisat2-build -p 20 $genome $indexhisat2 -x $index \-1 $rna_1_fq\-2 $rna_2_fq\--threads 20 \--min-intronlen 20 \--max-intronlen 20000 \--dta \--score-min L,0.0,-0.4 \-S ${index}.samsamtools sort -@ 20 \-o ${index}.sorted.bam \-O BAM \${index}.sam

PSSA_align

#!/bin/bashexport PATH="$PATH:/usr_storage/jcf/.conda/envs/PASA"
source  /pub_storage2/new_PASA/.bashrc#cat $Trinity_GG $Trinity_denovo >transcripts.fasta #
transcripts_fasta="$1" # transcripts.fasta generated from merging fasta file of Trinity denovo and Trinity genome guided mode#perl -e 'while(<>) { print "$1\n" if />(\S+)/ }' Trinity.fasta >tdn.accs #
denovo_transcript_id="$2" 
alignAssembly_config="$3"
genome="$4" #reference fasta fileseqclean $transcripts_fasta \-v /pub_storage2/PASA/UniVecLaunch_PASA_pipeline.pl -c $alignAssembly_config \-C -R -T \-g $genome \ -t $transcripts_fasta.clean \-u ${transcripts_fasta} \--ALIGNERS gmap,blat \--CPU 8 \ --TDN $denovo_transcript_id

Trinity GG denovo

#!/bin/bash#conda activate trinityexport PATH="$PATH:/usr_storage/jcf/.conda/envs/trinity"rna_1_fq="cat $1|sed ":a;N;s/\n/,/g;ta"" #1.fq path list 
rna_2_fq="cat $2|sed ":a;N;s/\n/,/g;ta"" #2.fq path list
bam="$3"  #sorted.bam from hisat
out=${bam%.*}Trinity --left $rna_1_fq \--right $rna_2_fq \--seqType fq  \--max_memory 100G \--no_normalize_reads \--CPU 20 \--bflyCalculateCPU  \--output trinity_denovo_$outTrinity --genome_guided_bam $bam  \--genome_guided_max_intron 10000 \--max_memory 100G \--no_normalize_reads \--CPU 20 \--bflyCalculateCPU\--output trinity_GG_$out

ab homo

#!/bin/bashexport PATH="$PATH:/usr_storage/jcf/.conda/envs/BUSCO"
source /usr_storage/jcf/geta-user204/.bashrcrna_1_fq="cat $1|sed ":a;N;s/\n/,/g;ta"" #1.fq path list 
rna_2_fq="cat $2|sed ":a;N;s/\n/,/g;ta"" #2.fq path list
genome="$3" #genome fasta file 
conf="$4" #small genome conf.txt of geta pipepline setting as default parameters
out=${genome%.*}
homo_pro="$5"geta.pl \--RM_species Embryophyta\--out_prefix `pwd`/$out \--config $conf \--cpu 20 \--protein $homo_pro\-genome $genome \-1 $rna_1_fq \-2 $rna_2_fq \--augustus_species $out

Evm

#!/bin/bashexport PATH="/usr_storage/xyf/jcf/genewise/EVM/EVidenceModeler-1.1.1/EvmUtils/:$PATH"genome="$1" #genome fasta file 
augustus_gff3="$2" #gff3 generated from augutus 
genewise_gff3="$3" #gff3 generated from tblastn and genewise
pasa_align_gff3="$4" #gff3 generated from PASA 
repeat_gff3="$5" #repeat gff3 generated from repeatemasker
partition="$6" #partition path for evmpartition_EVM_inputs.pl \--genome $genome\--gene_predictions $augustus_gff3 \--protein_alignments $genewise_gff3 \--transcript_alignments $pasa_align_gff3 \--repeats $repeat_gff3 \--segmentSize 5000000 \--overlapSize 10000 \--partition_listing $partitionwrite_EVM_commands.pl \--genome $genome \--gene_predictions $augustus_gff3 \--protein_alignments $genewise_gff3 \--transcript_alignments $pasa_align_gff3 \--repeats $repeat_gff3 \--output_file_name evm.out \--weights $weight >command.listParaFly -c command.list -CPU 32 recombine_EVM_partial_outputs.pl \--partitions $partition \--output_file_name evm.out convert_EVM_outputs_to_GFF3.pl \--partitions $partition \--output_file_name evm.out \--genome  $genome cat */evm.out.gff3 >evm.out.gff3

PASA update

#!/bin/bashexport PATH="$PATH:/usr_storage/jcf/.conda/envs/PASA "
source  /pub_storage2/new_PASA/.bashrcgenome="$1" #genome fasta file
annotation_conf="$2" #pasa annotation compare conf 
transcripts_fasta="$3" #transcripts_fasta file for PASA seqclean step
gff3="$4" #gff3 for PASA updataLaunch_PASA_pipeline.pl \-c $annotation_conf\-A -T -L \-g $genome\-t ${transcripts_fasta}.clean \-u $transcripts_fasta \--annots $gff3

这里只是提供了各个分析流程的脚本,对于初学者来说是比较有好的。我们在转录组上游分析教程[零基础]中提供了详细转录组上游分析的参数,对于初学者来说是比较友好的。

往期文章:

1. 复现SCI文章系列专栏

2. 《生信知识库订阅须知》,同步更新,易于搜索与管理。

3. 最全WGCNA教程(替换数据即可出全部结果与图形)

  • WGCNA分析 | 全流程分析代码 | 代码一

  • WGCNA分析 | 全流程分析代码 | 代码二

  • WGCNA分析 | 全流程代码分享 | 代码三

  • WGCNA分析 | 全流程分析代码 | 代码四

  • WGCNA分析 | 全流程分析代码 | 代码五(最新版本)


4. 精美图形绘制教程

  • 精美图形绘制教程

5. 转录组分析教程

转录组上游分析教程[零基础]

小杜的生信筆記 ,主要发表或收录生物信息学的教程,以及基于R的分析和可视化(包括数据分析,图形绘制等);分享感兴趣的文献和学习资料!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/194661.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

华为手环配置技巧

前言 华为手环作为生活健康辅助设备发挥不可忽视的作用&#xff0c;但每次更换手环后需要重新配置。华为手环不仅有健康监测、消息通知、天气推送、离线支付、公交卡、运动锻炼、等功能&#xff0c;还有倒计时、计时器、手电筒、闹钟、等小工具。下文介绍如何进行配置。 配置…

qt-C++笔记之组件-分组框QGroupBox

qt-C笔记之组件-分组框QGroupBox code review! 文章目录 qt-C笔记之组件-分组框QGroupBox1.《Qt 6 C开发指南》p752.《Qt 官方文档》3.《Qt 5.12实战》——5.9 分组框控件 1.《Qt 6 C开发指南》p75 2.《Qt 官方文档》 中间段落翻译&#xff1a; 我把示例补充完整&#xff1a; …

深入了解Java8新特性-日期时间API之ZonedDateTime类

阅读建议 嗨&#xff0c;伙计&#xff01;刷到这篇文章咱们就是有缘人&#xff0c;在阅读这篇文章前我有一些建议&#xff1a; 本篇文章大概19000多字&#xff0c;预计阅读时间长需要10分钟以上。本篇文章的实战性、理论性较强&#xff0c;是一篇质量分数较高的技术干货文章&…

【c++随笔15】c++常用第三方库

【c随笔15】c常用第三方库 一、数据库相关&#xff1a;HDFS、libpq、SQLite、RocksDB、unixODBC、Nanobdc、Ignite &#xff1b; 二、网络通信相关&#xff1a;libcurl、libevent、libssh、mosquitto、nghttp2、libuv&#xff1b; 三、加密和安全相关&#xff1a;1、OpenSSL 四…

【Java 基础】17 集合

文章目录 1.基本概念2.核心接口3.常见实现1&#xff09;List 接口的实现类ArrayListLinkedListVector 2&#xff09;Set 接口的实现类HashSetLinkedHashSetTreeSet 3&#xff09;Queue 接口的实现**类**ArrayQueue 4&#xff09;Map 接口的实现类HashMapLinkedHashMapTreeMap 4…

GateWay的路由与全局过滤器

1.断言工厂 我们在配置文件中写的断言规则只是字符串&#xff0c;这些字符串会被Predicate Factory读取并处理&#xff0c;转变为路由判断的条件 例如Path/user/**是按照路径匹配&#xff0c;这个规则是由 org.springframework.cloud.gateway.handler.predicate.PathRoutePr…

shell编程-awk命令详解(超详细)

文章目录 前言一、awk命令介绍1. awk命令简介2. awk命令的基本语法3. 常用的awk命令选项4. 常用的awk内置变量 二、awk命令示例用法1. 打印整行2. 打印特定字段3. 根据条件筛选行4. 自定义分隔符5. 从文件中读取awk脚本 总结 前言 awk命令是一种强大的文本处理工具&#xff0c…

柔性数组(Flexible Array Members)在C语言中的应用

什么是柔性数组&#xff1f; 在C语言中&#xff0c;柔性数组&#xff08;Flexible Array Members&#xff0c;FAMs&#xff09;是C99标凈引入的一种便捷的数据结构&#xff0c;用于声明具有可变大小数组的结构体。柔性数组通常用于当结构体的大小在编译时不确定&#xff0c;但…

【C++】异常处理 ⑦ ( 异常类的继承层次结构 | 抛出 / 捕获 多个类型异常对象 | 抛出子类异常对象 / 捕获并处理 父类异常对象 )

文章目录 一、抛出 / 捕获 多个类型异常对象1、抛出 / 捕获 多个类型异常对象2、操作弊端3、完整代码示例 二、异常类的继承层次结构1、抛出子类异常对象 / 捕获并处理 父类异常对象2、完整代码示例 - 抛出子类异常对象 / 捕获并处理 父类异常对象 自定义的 异常类 , 可能存在 …

浅析SD-WAN技术如何加强企业网络安全

在这个数字化时代&#xff0c;企业组网的安全性已经成为许多企业所面临的一个重要挑战。特别是随着云计算、移动办公等新型信息技术的普及&#xff0c;企业网络的规模和复杂度不断增加&#xff0c;网络攻击和数据泄露的威胁也日益增加。因此&#xff0c;企业需要采取更加有效的…

西南科技大学C++程序设计实验三(类与对象二)

一、实验目的 1.理解类的复制构造函数的定义、说明与使用 2.扩充类的数据成员,为其增加静态数据成员、常(const)成员、其他类定义的成员等 3.理解组合类的相关知识点 二、实验任务 阅读分析、完善程序。下面是一个学生类student的定义,数据成员包括一个代表姓名字符个数的…

23.12.3日总结

饿了么项目进度 新建菜品的添加属性&#xff1a; 适应不同尺寸的媒体查询&#xff1a; 菜品详细页面&#xff1a; 项目上遇到的问题 媒体查询遇到的问题&#xff1a; 关于媒体查询不能生效的原因-CSDN博客 答辩总结 js中声明变量的关键字&#xff08;const&#xff0c;let…

c语言编程题经典100例——(61~65例)

1&#xff0c;写一个函数&#xff0c;判断一个数是否为正数。 #include <stdio.h> #include <stdbool.h> bool isPositive(int num) { if (num > 0) { return true; } else { return false; } }int main() { int num, cube; printf("请输入一个…

初始化 Clouder Manager 数据库报错Unable to find JDBC driver for database type: MySQL

CDH部署初始化 Clouder Manager 数据库报错。 解决方法&#xff1a; 把mysql驱动放到 /usr/share/java/目录下面(没有的新建&#xff09;&#xff0c;驱动名称也要修改为mysql-connector-java.jar 再次执行后成功&#xff1a; sudo /opt/cloudera/cm/schema/scm_prepare_data…

SpringBoot之自定义Starter

目录 一、自己的理解 1. 理解一 2. 理解二 二、自定义starter&#xff08;重点&#xff09; 三、以mybatis-spring-boot-starter为例进行分析 1. 写好自己的自动配置类逻辑 2. 创建自己的starter项目并引入自动配置类项目的依赖 3. 在其它项目中使用自定义的starter 一…

c++遍历算法的transform算法

transform 算法函数用于对指定范围内的元素进行一个操作&#xff0c;并将结果存储到另一个范围中。 template<class InputIterator, class OutputIterator, class UnaryOperation> OutputIterator transform(InputIterator first, InputIterator last, OutputIterator r…

共享智能指针shared_ptr

共享智能指针 在C中没有垃圾回收机制&#xff0c;必须自己释放分配的内存&#xff0c;否则就会造成内存泄露。解决这个问题最有效的方法是使用智能指针&#xff08;smart pointer&#xff09;。智能指针是存储指向动态分配&#xff08;堆&#xff09;对象指针的类&#xff0c;…

[ 云计算 | AWS 实践 ] 使用 Java 检查指定的密钥是否存在于给定的 Amazon S3 存储桶中

本文收录于【#云计算入门与实践 - AWS】专栏中&#xff0c;收录 AWS 入门与实践相关博文。 本文同步于个人公众号&#xff1a;【云计算洞察】 更多关于云计算技术内容敬请关注&#xff1a;CSDN【#云计算入门与实践 - AWS】专栏。 本系列已更新博文&#xff1a; [ 云计算 | …

C++ 智能指针和内存管理:使用指南和技巧

C是一门强大的编程语言&#xff0c;但是在内存管理方面却存在着一些问题。手动管理内存不仅费时费力&#xff0c;而且容易出错。因此&#xff0c;C中引入了智能指针这一概念&#xff0c;以更好地管理内存。 什么是智能指针&#xff1f; 在C中&#xff0c;内存的分配和释放都是…

AttributeError: ‘FieldInfo‘ object has no attribute ‘required‘.

诸神缄默不语-个人CSDN博文目录 这个bug是在安装doccano包之后&#xff0c;在运行transformers代码时出现的。 核心报错信息&#xff1a; RuntimeError: Failed to import transformers.models.bert.modeling_bert because of the following error (look up to see its trac…