======统一版流程操作指南====== **项目执行目录:** 中国区:/TJPROJ7/GB_TR/PJ_GB/ncRNA/sRNA 海外:/TJPROJ11/GB_TR/PJ_GB/ncRNA/sRNA 分期号.拉丁名.日期 例:X204SCXXXXXXXX-Z01-F00X.Homo_sapiens.20220624 注意命名规范,命名不同可能会导致流程错误 ===== 1. 重构miRNA统一流程说明文档 ====== ====1.1 环境变量==== 天津: /TJPROJ7/GB_TR/PUBLIC/software/miniconda3/bin/activate ====1.2 脚本爬取脚本==== 国内项目: export PYTHONPATH="" unset PERL5LIB source /TJPROJ2/GB/PUBLIC/software/GB_TR/mRNA/miniconda3/bin/activate export PATH=/TJPROJ2/GB/PUBLIC/software/GB_TR/mRNA/miniconda3/bin:$PATH python /TJPROJ7/GB_TR/PUBLIC/source/ncRNA/gb_Small_man_pipline/new/bin/get_lims_info --project_type sRNA --name lims_name --pw lims_password --pjcode batch_id --local TJ --project_stage num --ProfitCode profitcode python /TJPROJ7/GB_TR/PUBLIC/source/ncRNA/gb_Small_man_pipline/new/bin/get_lims_info_bendi -project_type sRNA --name lims_name --pw lims_password --pjcode batch_id --local TJ --project_stage num --ProfitCode profitcode 海外项目: export PYTHONPATH="" unset PERL5LIB source /TJPROJ2/GB/PUBLIC/software/GB_TR/mRNA/miniconda3/bin/activate export PATH=/TJPROJ2/GB/PUBLIC/software/GB_TR/mRNA/miniconda3/bin:$PATH python /TJPROJ7/GB_TR/PUBLIC/source/ncRNA/gb_Small_man_pipline/new/bin/get_lims_info_hw --project_type sRNA --name lims_name --pw lims_password --pjcode batch_id --local TJ --project_stage num --ProfitCode profitcode python /TJPROJ7/GB_TR/PUBLIC/source/ncRNA/gb_Small_man_pipline/new/bin/get_lims_info_hw_bendi --project_type sRNA --name lims_name --pw lims_password --pjcode batch_id --local TJ --project_stage num --ProfitCode profitcode ====1.3 配置文件project.txt==== [project] #项目编号 project_number=X204SC22051832-Z01-F002 #项目名称 project_name=NVUK2022051110-SE-KI-16-human-NSCLC-sRNA-seq-10M reads-WBI Per #合同编号 project_contract=H204SC22051832 #项目分期 project_stage=2 #RNA组编号 project_RNA=16 #项目运营 project_yunying=Na Wang 王娜 #项目运营经理邮箱 yunying_email=wangna6489@novogene.com #项目信息 project_xinxi=Tiantong Fan 范天童 #项目信息负责人邮箱 xinxi_email=fantiantong6934@novogene.com #项目销售 project_xiaoshou=Simon Stritt #项目销售邮箱 xiaoshou_email=simon.stritt@novogene.com #项目类型 sRNA/siRNA/piRNA project_type=sRNA #数据来源 novogene/other project_source=novogene #产品来源 gn/hw product_source=hw #数据量(M) data_size=10 #测序类型, single/paired project_readtype=single #测序长度 project_readlength=50 #最终保留长度 project_keeplength=50 #是否交付clean data,填写yes或者no,海外默认yes clean_data=yes #文库号,以英文逗号隔开 project_library=FRRN220122876-1a,FRRN220122877-1a,FRRN220122874-1a,FRRN220122875-1a,FRRN220122873-1a #文库路径,以英文逗号隔开,和文库号顺序相一致,同一文库号的路径以冒号隔开 project_libpath=/TJPROJ4/XJ/department_data-nova/1100/220625_A00289_0686_BHMLY7DRXY-new,/TJPROJ4/XJ/department_data-nova/1100/220628_A00808_1009_AHWYWGDRXY-new,/TJPROJ4/XJ/department_data-nova/1100/220625_A00289_0686_BHMLY7DRXY-new,/TJPROJ4/XJ/department_data-nova/1100/220625_A00289_0686_BHMLY7DRXY-new,/TJPROJ4/XJ/department_data-nova/1100/220628_A00808_1009_AHWYWGDRXY-new #fastq所在路径,单端后缀为fq.gz,双端后缀为_1.fq.gz和_2.fq,gz,如已有文库号和文库号路 径,忽略该参数,一般纯分析项目使用 project_fqpath= #样本名称,以英文逗号隔开,和文库号顺序相一致 project_sample=BCL,AC3,EC,AC1,AC2 #样本按照不同的实验处理分组,组间以英文逗号隔开,同一组的样本以英文冒号隔开 project_s2g=AC3:AC1:AC2,BCL:EC #组名,以英文逗号隔开,和分组信息相对应 project_group=AC,Other #比较组合,处理组vs对照组,不同比较组合用英文逗号隔开,如AvsB,其中A和B为组名 project_compare=ACvsOther #差异韦恩组合,不同比较组以英文冒号隔开,不同维恩组合以英文逗号隔开。如果不画venn图,等号 后面不填 project_venn= #共表达venn图,既可以画样品间的,可以画组间的,同一venn图中的样品或者组以vs隔开,不同 共表达venn图以英文逗号隔开。如果不画共表达venn图,等号后面不填 project_coexpr_venn=AC1vsAC2vsAC3vsBCLvsEC,ACvsOther #分析类型 analysis_type=Standard Analysis #是否为外泌体 yes/no 默认no exosome_type= #需要排除的分析内容,以英文逗号隔开,1:QC/2:Mapping/3:Known/4:ncRNA/5:Repeat/6:Gene/7:Novel/8.Edit&family/9:Target/10:Diff/11:Enrichment/12:NAT/13:TAS project_exclude= #物种分类信息animal/plant project_species= #基因组版本,,同自动化基因组路径,填到genome前一层。 genome_version= #物种的拉丁名,爬取信息搜集表里获得 latin=Homo_sapiens #kegg物种缩写,如人hsa 小鼠mmu kegg_abbr=hsa #物种基因组大小,normal/large,小麦等基因组较大的物种填写large,用于建bam文件index genome_size=normal #差异分析软件,DESeq2/edgeR/DEGSeq,默认为DESeq2 diff=DESeq2,edgeR #基因显著差异筛选阈值,pvalue或padj值,默认采用padj值0.05 padj=0.05,0.05 #基因显著差异fold change阈值 fc=1,2 #是否自动调参 true|false 仅在padj下有效 adjust=true #调参后的p值 adjust_p=0.05,0.05 #调参后的fc值 adjust_fc=1,2 #adapter3 project_adapter3=AGATCGGAAGAGCACACGTCT #adapter5 project_adapter5=GTTCAGAGTTCTACAGTCCGACGATC #miRBase 可填多个,以英文逗号分割 project_abbr=hsa #mismatch of bowtie in Mapping, 默认1 project_mismatch=1 #chrnum of circos, 默认10 project_chrnum=10 #model of novel 1.animal; 2.monocot; 3.dicots project_model= #type of target(RNAhybrid) only for animal 默认3utr_human target_type=3utr_human #organism refanimal or refplant project_organ= #NAT 植物分析时用,从/TJPROJ2/GB/PUBLIC/source/GB_TR/ncRNA/smallRNA/6plant_NAT/NAT/PlantNATsDB/spe.list中选择,没有用other代替 project_NAT= #common 样本间公共序列分析,默认y(单样本无) project_common=y #report语言,海外默认English project_reportlanguage=English #流程部署位置,默认为TJ local=TJ #利润中心,默认为2001 ProfitCode=1100 #配置文件 configure=/TJPROJ7/GB_TR/PUBLIC/source/ncRNA/gb_Small_man_pipline/new/configure.txt 目前需要自己补全: genome_version project_exclude project_model project_organ project_NAT(plant) ====1.4 执行命令==== export PYTHONPATH="" unset PERL5LIB source /TJPROJ7/GB_TR/PUBLIC/software/miniconda3/bin/activate /TJPROJ7/GB_TR/PUBLIC/source/ncRNA/gb_Small_man_pipline/new/srna_pipeline ====1.5 任务投递说明==== QC: sjm QC.JOB Analysis: sjm Analysis.JOB ====1.6 差异调参设置==== 如果差异miRNA数量小于6为差异少的组: 1<=组个数<5 && 差异少组数>=1 调参 5<=组个数<=10 && 差异少组数>=2 调参 组个数>10 && 差异少组数>=5 调参 ===== 2. 旧miRNA统一流程说明文档 ====== **Pipline目录:** /TJPROJ7/GB_TR/PUBLIC/source/ncRNA/gb_Small_man_pipline/pipeline/sRNA_pipeline.py ====2.1 参数说明==== | --project | 分期号_物种拉丁名称,例如X204SC20072581-Z01-F001_Arabidopsis_thaliana | | --project_source | 数据来源,novogene/other,默认novogene,如数据来源于外包,填写other | | --English | 生成英文结题报告,填此参数,“y”;中文报告不填此参数 | | --ownername | 自己的名字 | | --contract | 合同编号_合同名称(以下划线分隔),例:NH150893_北京友谊医院3个小鼠SmallRNA测序及分析软件RNAseq-Mus-ZhD的开发 | | --code_number | 分期号 | | --org | 物种,只能是植物(refplant)或动物(refanimal) | | | --fq_dir | 用于纯分析的raw data数据绝对路径(lib.fq.gz),公司下机数据不填。【纯分析】 | | --mapfile | mapfile文件:路径<\t>文库名<\t>样本名 | | --sample | 样本名,以逗号隔开,e.g.TR1,TR2,TS1,TS2 | | --group | 样本分组方式,组内用冒号隔开,组间用逗号隔开,e.g.TR1,TR2,TS1,TS2,TR1:TR2,TS1:TS2【选填】 | | --groupname | 组名,以逗号隔开,对应分的样本组e.g.TR1,TR2,TS1,TS2,TR,TS【选填】 | | --compare | 样本组比较方式,处理:对照,组内用冒号隔开,组间用逗号隔开e.g."2:1,1:3,2:3"【选填】;如果比较组合过多,可以将信息搜集表中的compare组合整理成com.txt文件,格式如下,然后填此文件即可: | | --venn_cluster | venn画图方式,适合2~4组比较;同一张venn图内的比较组用下划线隔开,不同的venn图间用逗号隔开,默认不画,e.g."2:1_1:3_2:3,1:3_2:3";只有一组compare时,次参数不填,默认做单样本间venn图【选填】; | | --venn_sample | 样本/组共表达venn图,填写方式 样本1:样本2:样本3,样本1:样本2 | | --abbr | 物种缩写,3个小写字母,由老师提供,可以是多个,以逗号分隔;如果老师要分析miRBase中所有已知miRNA,则--abbr参数填all,所有动物填animal, 所有植物填plant | | --spe | 物种拉丁名,eg:Homo_sapiens | | --mode | 预测novel模式,value only be1,2,3; 1 for anima;2 for monocot; 3 for dicots | | --chrNum | 需要画密度图的染色体数,默认10 | | --refdir | 自动化标准参考基因组格式,填到genome。例:/TJPROJ6/GB_TR/reference_data/new_pip/Animal/Homo_sapiens/Homo_sapiens_Ensemble_97/genome/ | | --refer | genome.fa 路径,同级目录下应包含相应bowtie index【如填refdir参数,可不填此参数】 | | --rRNA/--tRNA/--snRNA/--snoRNA | ncRNA 类fasta文件路径【如填refdir参数,可不填此参数】,如果公共库没有该信息也无法提取,用Rfam数据库代替,路径: /TJPROJ2/GB/PUBLIC/source/GB_TR/ncRNA/smallRNA/4ncRNA/bin/Rfam_ncRNA_DB | | --exon | exon.fa及index【如填refdir参数,可不填此参数】 | | --intron | intron.fa及index【如填refdir参数,可不填此参数】 | | --utr3 | 3tur.fa 【动物必填】(transcript)【如填refdir参数,可不填此参数】 | | --transcript | transcript.fasta【植物项目必填】【如填refdir参数,可不填此参数】| | --targetsoft | target软件,默认"both" (miRanda/RNAhybrid)【动物】 | | --geneAnn | Gene Stable ID<\t>Gene Name<\t>Gene description【如填refdir参数,可不填此参数】| | --genefile | genome_gene.xls, 同有参【如填refdir参数,可不填此参数】 | | --gtf | genome.gtf,同有参【如填refdir参数,可不填此参数】 | | --go | go.txt,四列,同有参【如填refdir参数,可不填此参数】 | | --keggfile | kegg.txt文件, 同有参【如填refdir参数,可不填此参数】 | | --kegg | KEGG缩写 | | --repdir | repeat_predict 文件夹【如填refdir参数,可不填此参数】 | | --NAT | NAT物种缩写,从括号list中选择,植物NAT分析时用到。list在/TJPROJ2/GB/PUBLIC/source/GB_TR/ncRNA/smallRNA/6plant_NAT/NAT/PlantNATsDB/spe.list,如果没有用"other"代替【植物必填】| | --type | 动物靶向预测RNAhybrid软件需填类型,3utr_human,3utr_fly,3utr_worm中选择【动物必填】| | --common | 如果分析内容里有“4.样品间的公共序列和特异序列的分析(>;=2个样本)”,填写y,如果没有填写n,单个样本填n(新增参数),默认是y。 | | --cut_reads | 是否cut数据,默认n (纯分析) | | --datasize | 数据量,默认10,单位M raw reads | | --profitcode | 利润中心 (区分国内,海外项目) | ==== 外包数据 ==== 外包数据一般为PE151,注意特殊参数: | --fq_dir | 外包数据位置,sample.fq.gz格式 | | --cut_reads | 填写y,从read1 cut 50bp | | --ad3 AACTGTAGGCACCATCAAT | 外包公司adapter | | --project_source other | 数据来源填成other,推送指标库用 | 关于数据释放,需运营在备注中说明: pe151+se50 释放外包原始数据和cut后的数据 se50 仅释放cut后的数据 ====2.2 sRNA 任务投递及说明 ==== QC:sjm log/QC.JOB Analysis:sjm log/Analysis.JOB 运行完毕后检查项目路径下的check文件: if checkResult_success: 检查结题报告和数据是否已成功上传,备份是否已经完成 elif checkResult_failed: 检查是否有分析步骤没有完成,如果确认无误,可以删除项目路径下的checkResult_failed,touch checkResult_success,续投JOB 可以从结果check邮件中查看缺失或错误的文件。以下文件中的邮箱信息需要配置好,不然可能收不到邮件 ~/.lims_report_upload_gn_config ~/.lims_report_upload_hw_config QC各shell说明 log/step1.sh - rawdata, QC,mapping \\ log/lims_qc_report_upload.sh - QC上传lims脚本\\ sjm方式:sjm log/Analysis.JOB \\ Analysis各shell说明\\ log/step2.sh - sRNA分类注释和定量\\ log/step3.sh - miRNA碱基编辑,target预测(split)\\ log/step4.sh - target预测(merge),差异miRNA分析,差异miRNA靶基因富集分析\\ log/generate_result_report.sh - 生成report 与result\\ log/release_data.sh - 生成释放数据\\ log/lims_final_report_upload.sh - 海外:上传结题报告(R)/中国区:上传结题报告及释放数据(R) \\ log/lims_release.sh - 海外:根据释放方式打包释放数据(D)(仅海外) log/API_upload.sh - 上传API指标库脚本 log/magic.sh, log/upload_magic.sh - magic生成及上传脚本(仅国内) log/check_result.sh - 自动检查结果脚本 backup/CMD_*.sh - 备份数据时执行(项目备份执行CMD_PJbackOSS.sh) \\ ====2.3 自动化手动流程结果对比文档 ==== {{ :products_tr:调控统一流程:国内和海外small统一流程:统一版srna自动化手动流程结果对比.xlsx |}} ==== 2.4 更新记录 ==== 2022/6/21 QC部分手动流程取消reduce id 2022/6/22 调整差异部分参数 2022/6/23 优化target清理脚本 2022/6/27 富集脚本优化,解决kegg和abbr不同时报错问题 2022/6/28 备份脚本优化 2022/6/30 run.sh增加project_source参数,公司下机可忽略此参数;增加API指标库推送脚本;更改magic/upload脚本位置 2022/7/7 GO脚本增加na.omit步骤 2022/7/13 海外流程增加英文QC报告/增加refdir参数 2022/7/14 优化结果文件打包/释放目录增加3.ref文件夹/取消project_sum/报告打包/重投result问题/国内magic备份 2022/7/18 Mapping参数mismatch改为1(国内海外统一) 2022/12/14 更新信息收集表模版中mirBase列表(删除部分物种),在mirBase官方提供的list中有,但是实际在mature.fa文件中不存在的物种。 ===== 3. 特殊项目处理 ====== ==== 植物 ==== === 1. novel部分二级结构预测慢 === 处理办法 Novel部分predict步骤加上-c 参数 例:/TJPROJ7/GB_TR/PUBLIC/source/ncRNA/gb_Small_man_pipline/8novel/bin/pipline_predict.sh -o sly.predict -i gene.unmap.fas -r ref/genome.fa -M ref/novel_mature_ref.fa -m 3 -k 15 -p 10 -g 50000 -c 在abbr/abbr.predict/predict.cmd中不会生成/执行此步骤 {{ :products_tr:novel.png?600 |}} === 2. 大基因组 === ** 代表物种:小麦(Triticum_aestivum) ** 基因组较大,在预测过程中需要bowtie建大index 处理办法:替换脚本 sed -i 's#pipline_predict.sh#pipline_predict_large.sh#g' *_runnovel_miRNA.sh === 3. 染色体/contig数量过多 === ** 代表物种:烟草(Nicotiana_tabacum),苜蓿(Medicago_sativa) 处理办法:调整预测步骤 -g 参数,调大 例:/TJPROJ2/GB/PUBLIC/source/GB_TR/ncRNA/smallRNA/8n_miRNA/bin/pipline_predict.sh -o mtr.predict -i gene.unmap.fas -r ref/Medicago_sativa_figshare_toplevel.fa -M ref/novel_mature_ref.fa -m 3 -k 15 -p 10 -g 400000 -c ==== 中国区旧流程处理办法 ==== 2022/8/10后新启动的项目,参照之前的投递方法,直接投递QC.JOB即可。特殊情况见下: 8/10号流程取消原流程中reduceID步骤(对5'adapter/3'adapter null等指标进行质控并从rawdata中抽reads去除,可能会导致原始数据量较少) === 特殊情况处理 === 2022/8/10前启动且需要重新QC的项目执行以下操作: 执行run.sh后进入QC文件夹 sh generate_QC.sh sh run_smallQC.sh_1 投递生成的QC脚本 后边Mapping照常跑 ==如果重复QC后发现数据量差别较大的,或者无法确认使用哪个脚本进行QC的可以找我确认。 by fantiantong== ===== 4. 常见售后 ====== ==== clean data fasta格式转fastq格式 ==== planA. 客户接受fastq格式文件中的质量值为虚拟质量值 脚本路径:/TJPROJ2/GB/PUBLIC/source/GB_TR/Personalized_analysis/fa2fq/fasta_to_fastq.pl 使用:perl /TJPROJ2/GB/PUBLIC/source/GB_TR/Personalized_analysis/fa2fq/fasta_to_fastq.pl clean.fa 1>clean.fq planB. 客户不接受fastq格式文件中的质量值虚拟,可以根据cleandata的ID从rawdata中提取(质量值为实际质量值,但是reads为未trim 3'adapter的reads) 内部不推荐,尽量推荐客户选择planA,实在不行可参考以下内容 提取clean.fa文件中的ID: python /TJPROJ2/GB/PUBLIC/source/GB_TR/Personalized_analysis/fa2fq/get_id.py -c clean.fa -o id.txt 用seqtk进行提取 seqtk subseq raw.fq id.txt > clean.fq