SampleID=JN_1901 Blast_out=/Analysis_B/20220326_JNILI/006_blastx/ Diamond_Refer="/home/Reference_database/Diamond_blastx_nr/Diamond_nr.dmnd" Diamond_file_in=/Analysis_B/20220326_JNILI/004_Trinity/JN_1901_trinity.fa #### 003 #### cd ${Blast_out} source activate yerunze_diamond diamond blastx -d ${Diamond_Refer} -p 16 -q ${Diamond_file_in} -o ${SampleID}_blastx --outfmt 6 qtitle qlen sseqid pident length qstart qend evalue bitscore staxids stitle salltitles sscinames -e 1e-5 -k 1 -b5 -c1这段代码什么意思
时间: 2024-02-19 07:00:40 浏览: 132
这是一段基于Diamond软件进行blastx比对的代码。Diamond是一款高效的序列比对软件,可以在较短时间内完成大规模序列比对任务。
具体来说,这段代码的作用是对输入的JN_1901_trinity.fa文件进行blastx比对,比对的参考数据库为Diamond_nr.dmnd。比对结果将以outfmt 6的格式输出到文件JN_1901_blastx中,包括查询序列ID、长度、匹配的参考序列ID、匹配度、匹配长度、查询序列起始和终止位置、E值、比特分数、参考序列分类信息等。比对时使用了16个线程,设置了一些参数如-e 1e-5表示E值阈值为1e-5,-k 1表示输出最佳匹配,-b5表示输出最多5个相似序列,-c1表示输出序列分类信息。
相关问题
SampleID=JN_1901 Blast_out=/Analysis_B/20220326_JNILI/007_blastn/ Diamond_file_in=/Analysis_B/20220326_JNILI/004_Trinity/JN_1901_trinity.fa #### 003 #### cd ${Blast_out} blastn -query ${Diamond_file_in} -db "/home/Reference_database/NCBI_db_nt/" -out ${Blast_out}${SampleID}_blastn.out -num_threads 12 -outfmt 6 qseqid qlen saccver salltitles slen pident length qcovs bitscore evalue staxids -evalue 1e-5 awk -F$'/t' '!seen[$1]++' ${Blast_out}${SampleID}_blastn.out > ${Blast_out}${SampleID}_blastn.out.unique帮我解释一下这段代码
这段代码主要是进行基因序列比对和去重的过程,其中:
- SampleID=JN_1901 是样本的编号;
- Blast_out=/Analysis_B/20220326_JNILI/007_blastn/ 是blast比对结果的输出路径;
- Diamond_file_in=/Analysis_B/20220326_JNILI/004_Trinity/JN_1901_trinity.fa 是基因组装结果的路径;
- cd ${Blast_out} 进入blast比对结果的输出路径;
- blastn -query ${Diamond_file_in} -db "/home/Reference_database/NCBI_db_nt/" -out ${Blast_out}${SampleID}_blastn.out -num_threads 12 -outfmt 6 qseqid qlen saccver salltitles slen pident length qcovs bitscore evalue staxids -evalue 1e-5 进行blastn比对,-query指定比对的查询序列,-db指定参考序列库,-out指定输出文件名,-num_threads指定线程数,-outfmt指定输出格式,这里是tabular格式;
- awk -F$'/t' '!seen[$1]++' ${Blast_out}${SampleID}_blastn.out > ${Blast_out}${SampleID}_blastn.out.unique 根据比对结果中的qseqid(即查询序列的ID)进行去重,这里使用awk命令,-F指定分隔符为制表符,!seen[$1]++表示如果第一个字段(即qseqid)没有出现过,则保留该行,否则忽略该行,最终输出去重后的结果到${Blast_out}${SampleID}_blastn.out.unique文件中。
blastn -query ${Diamond_file_in} -db "/home/Reference_database/NCBI_db_nt/" -out ${Blast_out}${SampleID}_blastn.out -num_threads 12 -outfmt 6 qseqid qlen saccver salltitles slen pident length qcovs bitscore evalue staxids -evalue 1e-5 awk -F$'/t' '!seen[$1]++' ${Blast_out}${SampleID}_blastn.out > ${Blast_out}${SampleID}_blastn.out.unique帮我解析一下这段代码
这段代码是用于执行Blastn比对,并处理Blastn比对结果的操作。下面是它的详细解释:
1. `blastn -query ${Diamond_file_in} -db "/home/Reference_database/NCBI_db_nt/" -out ${Blast_out}${SampleID}_blastn.out -num_threads 12 -outfmt 6 qseqid qlen saccver salltitles slen pident length qcovs bitscore evalue staxids -evalue 1e-5`:这是Blastn的命令行,其中`${Diamond_file_in}`是输入的序列文件路径,`/home/Reference_database/NCBI_db_nt/`是参考数据库的路径,`${Blast_out}${SampleID}_blastn.out`是输出结果文件的路径和文件名,`-num_threads 12`表示使用12个线程进行比对,`-outfmt 6`指定输出格式为表格格式,接下来的各个参数指定了输出表格中每一列的信息。
2. `awk -F$'/t' '!seen[$1]++' ${Blast_out}${SampleID}_blastn.out > ${Blast_out}${SampleID}_blastn.out.unique`:这是用于处理Blastn比对结果的操作,其中`${Blast_out}${SampleID}_blastn.out`是Blastn比对输出的结果文件,`> ${Blast_out}${SampleID}_blastn.out.unique`表示将处理结果输出到`${Blast_out}${SampleID}_blastn.out.unique`文件中。`awk -F$'/t' '!seen[$1]++'`是一个awk命令,它的作用是将`${Blast_out}${SampleID}_blastn.out`文件中的重复行去除,只保留第一次出现的行。其中`-F$'/t'`指定了表格文件的分隔符为制表符,`!seen[$1]++`表示只输出第一次出现的行,去除重复行。
因此,这段代码的作用是将`${Diamond_file_in}`中的序列文件与参考数据库中的核酸序列进行比对,并将比对结果输出到`${Blast_out}${SampleID}_blastn.out`文件中,然后使用awk命令去除比对结果中的重复行,并将处理结果输出到`${Blast_out}${SampleID}_blastn.out.unique`文件中。
阅读全文