h38构建索引

作者: 线断木偶人 | 来源:发表于2018-08-01 10:06 被阅读6次
先下载h38的参考基因组文件
wget http://hgdownload.cse.ucsc.edu/goldenPath/hg38/bigZips/hg38.fa.gz
#解压 gzip -d hg38.fa.gz 也一样
gunzip hg38.fa.gz  
#gzip -9v need_gzip_file

一般情况下只要执行以下命令即可:

#构建各种索引文件
/data/BGICGA/tools/samtools dict hg38.fa > hg38.dict
/data/BGICGA/tools/samtools faidx hg38.fa
/data/BGICGA/tools/bwa index -a bwtsw hg38.fa

但是,我这里要提取各条染色体排序。

/data/BGICGA/tools/samtools faidx hg38.fa

awk '{print $1}' hg38.fa.fai > all_chrname

# cat samtools_faidx.sh
#提取每条chr的fa序列
#!/usr/bin/bash
cat all_chrname | while read line
do
    samtools faidx hg38.fa $line  >  ./fafile/${line}.fa
done
echo "done."

sh samtools_faidx.sh
#!/usr/bin/env perl
#对chrY进行处理;
open (FA, "chrY.fa") or die "Error: $!\n";
open (MSK, ">", "chrY_mask.fa") or die "Error: $!\n";
open (ALLN, ">", "chrY_all_N.fa") or die "Error: $!\n";
local $/ = ">";
my @chrY = <FA>;
close FA;
shift @chrY; # shift the leading empty record.
my $seq = $chrY[0];
my $hd = $1 if ($seq =~ s/^(\S+)[^\n]*\n//);
$seq =~ s/\s+//g;

# according to the http://www.ncbi.nlm.nih.gov/projects/genome/assembly/grc/human/
# mask the Pseudoautosomal region.
# Pseudoautosomal regions
# Name  Chr Start        Stop
# PAR#1 X   10001        2781479
# PAR#2 X   155701383    156030895
# PAR#1 Y   10001        2781479     2781479 - 10001 = 2771478
# PAR#2 Y   56887903     57217415    57217415 - 56887903 = 329512
substr ($seq, 10000, 2771479, ("N" x 2771479));
substr ($seq, 56887902, 329513, ("N" x 329513));
my $all_N = "N" x (length($seq));
$seq =~ s/([A-z]{60})/\1\n/g;
$all_N =~ s/(N{60})/\1\n/g;

print MSK ">$hd\n$seq\n";
close MSK;

print ALLN ">$hd\n$all_N\n";
close ALLN;
#对所有fa文件合并
cat chr[1-9].fa chr1[0-9].fa chr2[0-2].fa chrX.fa chrY_mask.fa chrM.fa chrUn_*.fa  chr*_alt.fa chr*_random.fa > ../hg38_chM_male_mask.fa
cat chr[1-9].fa chr1[0-9].fa chr2[0-2].fa chrX.fa chrY_all_N.fa chrM.fa chrUn_*.fa chr*_alt.fa chr*_random.fa > ../hg38_chM_female.fa

#构建索引
#cat work.sh
#!/bin/sh
/data/BGICGA/tools/samtools dict hg38_chM_female.fa > hg38_chM_female.dict
/data/BGICGA/tools/samtools faidx hg38_chM_female.fa
/data/BGICGA/tools/bwa index -a bwtsw hg38_chM_female.fa

/data/BGICGA/tools/samtools dict hg38_chM_male_mask.fa > hg38_chM_male_mask.dict
/data/BGICGA/tools/samtools faidx hg38_chM_male_mask.fa
/data/BGICGA/tools/bwa index -a bwtsw hg38_chM_male_mask.fa
sh work.sh

好了,构建完毕。


索引
重点:samtools dict; samtools faidx; bwa index;

相关文章

  • h38构建索引

    先下载h38的参考基因组文件 一般情况下只要执行以下命令即可: 但是,我这里要提取各条染色体排序。 好了,构建完毕...

  • 索引构建

    1 索引构建 索引构建 建立倒排索引的过程,就是索引构建 索引器 构建索引的程序或者计算机,就是索引器 索引器需要...

  • cocoapods私有库笔记

    构建私有库 索引库:存放索引地方私有库:存放代码地方 1.构建索引库 1.1 构建Cocoapods管理 1.1....

  • day08-存储引擎

    一、回顾 1.1 索引 (1) 聚集索引构建B树的过程 (2) 辅助索引构建B树的过程 (3) 辅助索引细分 单列...

  • RNA-seq:STAR 软件比对(SLURM递交系统)

    索引构建 构建好索引后,第一次比对 未完待续

  • day08(上周复习+存储引擎下)

    1、上周复习 1.1、索引 1.1.1、聚集索引构建B树的过程 1.1.2、辅助索引构建B树的过程 1.1.3、面...

  • Day07-SQL存储引擎

    上节回顾 1. 聚集索引与辅助索引的区别?(面试题) 聚集索引构建B树过程(面试题) 辅助索引构建B树过程(面试题...

  • 索引构建

    创建索引 首先在solr目录下建立一个名字为test的core,后面的-force是因为是root账户创建的cor...

  • IDEA文件查找功能Enter file name失效

    索引丢失 需要重现构建项目索引。操作方法如下:

  • Day08-锁、隔离级别

    上节知识回顾 1. 索引(详细回答) 聚集索引构建B树详细过程 辅助索引构建B树详细过程 2. 面试简易回答 请简...

网友评论

    本文标题:h38构建索引

    本文链接:https://www.haomeiwen.com/subject/ahrlvftx.html