1. 시야각
View 명령의 주요 기능은 bam 파일로 Sam 파일을 교환하는 것입니다. 그런 다음 bam 파일에 대해 데이터 정렬, 추출 등의 다양한 작업을 수행합니다. 이러한 작업은 bam 파일에서 수행되므로 가져오기가 Sam 파일이면 수행할 수 없습니다. 마지막으로 정렬 또는 추출된 데이터를 bam 또는 Sam (기본값) 형식으로 내보냅니다.
Bam 파일의 장점: bam 파일은 이진 파일이며 Sam 텍스트 파일보다 디스크 공간을 적게 차지합니다. Bam 바이너리를 사용하면 작업 속도가 빨라집니다.
View 명령에서 Sam 헤더 (시퀀스 ID) 의 입력 (-t 또는 -T) 및 출력 (-h) 은 별도의 매개변수로 제어됩니다.
사용법: samtools 보기 [옵션] < In.bam & gt | & ltin.sam & gt [region1[...]]
기본적으로 영역을 추가하지 않으면 모든 영역이 내보내집니다.
옵션:
-b 출력 BAM
-응? 기본적으로 출력은 SAM 형식 파일입니다. 이 매개변수는 출력 BAM 형식을 설정합니다.
The SAM 출력의 인쇄 제목
-응? 기본적으로 내보낸 Sam 형식 파일에는 제목이 없습니다. 이 매개변수는 Sam 파일을 내보낼 때 헤더 정보를 설정합니다.
-H 머리글만 인쇄합니다 (정렬 안 함)
-응? 파일의 헤더만 내보냅니다
-S 의 입력은 SAM 입니다
-응? 기본적으로 가져오기는 BAM 파일입니다. SAM 파일을 가져오는 경우 이 매개변수를 추가하는 것이 좋습니다. 그렇지 않으면 오류가 발생할 수 있습니다.
-u 압축되지 않은 BAM 출력 (force -b)
-응? 이 매개 변수를 사용하려면 -b 매개 변수가 필요합니다. 이렇게 하면 시간을 절약할 수 있지만 더 많은 디스크 공간이 필요합니다.
-c 정렬을 인쇄하지 않고 계수하고 인쇄합니다
-응? 총수. 모든 필터 옵션 (예:' -f',' -F' 및' -q',? 모두 고려되었습니다.
-응? 필터링 작업의 통계 기능
-c 일치하는 레코드 수만 인쇄합니다
-L 파일? 출력 정렬이 입력 BED 파일과 겹칩니다 [비어 있음]
-t 파일? 참조 이름 및 길이 리스트 (필수) [비어 있음]
-응? 리스트 파일을 제목의 입력으로 사용합니다.
-T 파일? 참조 시퀀스 파일 (force-S)[ null]
-응? 시퀀스 fasta 파일을 헤드 입력으로 사용합니다.
-o 파일? 출력 파일 이름 [stdout]
-F INT? 필터 플래그, 0 은 [0] 이 설정되지 않았음을 의미합니다
-응? INT [0] 의 비트와의 정렬을 건너뜁니다
-응? 숫자 4 는 시퀀스가 참조 시퀀스와 일치하지 않음을 나타냅니다.
-응? 숫자 8 은 해당 시퀀스의 일치하는 시퀀스가 참조 시퀀스와 일치하지 않음을 나타냅니다.
-응? 필터링 기능. 예를 들어 F 12 는 양단 맵만 필터링합니다.
-q INT? 최소 매핑 품질 [0]
일반적으로 비교의 최소 질량 값은 20 으로 유일한 비교를 나타냅니다. 위에서 언급한 -bF 매개변수와 함께 사용하여 특정 비교 결과를 추출할 수 있습니다.
예:
Sam 파일을 bam 파일로 변환
Samtools 뷰-bsabc.sam > Abc.bam
펑 하는 소리, 샘
Samtools 뷰 -h -o out.sam out.bam
참조 시퀀스와 비교 된 비교 결과 추출
Samtools 뷰-bf4abc.bam > Abc 입니다. F.bam
두 쌍의 판독값이 모두 참조 시퀀스와 일치하는 비교 결과를 추출하려면 4+8, 12 값만 필터 매개변수로 사용하면 됩니다.
Samtools 뷰-BF12abc.bam > Abc 입니다. F 12.bam
참조 시퀀스와 일치하지 않는 비교 결과를 추출합니다.
Samtools 뷰-bf4abc.bam > Abc.f.bam
비교 결과를 bam 파일에서 caffold 1 으로 추출하고 Sam 파일 형식으로 저장합니다.
Samtools 보기 abc.bam scaffold1> 비계 1.sam
비계 1 에서 추출하면 30k 에서 100k 까지의 비교 결과를 비교할 수 있습니다.
Samtools abc.bam scaffold1:30000-100000 $ gt 보기 비계 1_30k- 100k.sam
Fasta 파일에 따라 Sam 또는 bam 파일에 헤더를 추가합니다.
Samtoolsview-t genome.fasta-h scaffold1.Sam > 비계 1.h.sam
2. 분류
정렬 bam 파일을 정렬합니다. 일부 소프트웨어에는 stringtie 와 같은 sort 의 bam 또는 Sam 파일이 필요하므로 sort 를 사용해야 합니다. 깊이를 구할 때도 순서를 정해야 한다. 을 눌러 섹션을 인쇄할 수도 있습니다
사용법: Sam 도구 sort [-n] [-m < MaxMem & gt]& lt;; In.bam & gt& ltout.prefix & gt?
기본적으로 -m 메모리 매개 변수는 500,000,000 또는 500M 입니다 (k, m, g 와 같은 약어는 지원되지 않음). 큰 데이터를 처리할 때 메모리가 충분한 경우 큰 값을 설정하면 시간을 절약할 수 있습니다.
-n 정렬 방법을 짧은 읽기 ID 별로 정렬하도록 설정합니다. 기본적으로 fasta 파일에 있는 시퀀스 (즉, 헤드) 와 시퀀스의 위치를 기준으로 왼쪽에서 오른쪽으로 정렬됩니다.
예:
Samtools 정렬 accept.bamaccept.sort 결국 accept.sort.bam 을 생성합니다
3. 통합
둘 이상의 정렬된 bam 파일을 하나의 bam 파일로 결합합니다. 병합된 파일은 이미 정렬되어 있습니다.
사용법:? Sam toolsmerge [-NR] [-h inh.sam] < Out.bam & gt & ltin1.bam > & ltin2.bam & gt[...]
옵션: -n? 읽기 이름별로 정렬
-r? RG 태그 추가 (파일 이름에서 추정)
-당신은요? 압축되지 않은 BAM 출력
-f? 있는 경우 출력 BAM 덮어쓰기
-1? 압축 레벨 1
-R 가? 지정된 영역에서 파일 병합 STR [all]
-h 파일? 파일의 제목을 & ltout.bam & gt[in 1.bam] 에 복사합니다
예:
4. 색인
기본적으로 Bam 파일을 색인화하려면 먼저 bam 파일을 정렬해야 합니다. 그렇지 않으면 오류가 보고됩니다.
색인화 후 접미어가 붙은 파일입니다. 빠른 임의 처리를 위해 Bai 가 생성됩니다. 대부분의 경우 Bai 파일이 필요합니다. 특히 시퀀스가 일치하는 경우에는 더욱 그렇습니다. 예를 들어, samtool 의 tview 명령이 필요합니다. Gbrowse2 는 읽은 비교 그래프를 표시할 때도 필요합니다. IGV 모니터 비교도 필요합니다.
사용법: samtools index & ltin.bam & gt [out.index]
예:
다음 두 명령의 결과는 같습니다.
$ samtools 인덱스 abc.sort.bam
$ samtools 인덱스 abc.sort.bamabc.sort.bam.bai
5.faidx
인덱스 fasta 파일, 생성된 인덱스 파일은 다음과 같습니다. Fai 접미사. 이 명령은 색인 파일을 기준으로 fasta 파일에서 (하위) 시퀀스를 빠르게 추출할 수도 있습니다.
사용법: samtoolsfaidx & ltin.bam & gt [...]]
게놈 파일을 색인화하여 시퀀스를 쉽게 추출할 수 있습니다.
예: $ samtools faidx genome.fasta
색인 파일이 있기 때문에 fasta 형식의 하위 시퀀스는 다음 명령을 사용하여 게놈에서 빠르게 추출할 수 있습니다.
$ samtools faidxgenome.fasta SCF fold _10 > Scaffold_ 10.fasta
6. 보기
Tview 는 reads 가 genome 과 어떻게 비교되는지 genome browser 와 시각적으로 보여줍니다.
앞서 언급한 정렬 및 색인 명령을 미리 사용한 다음 아래 명령을 사용해야 합니다.
사용법: samtools tview & ltaln.bam & gt[ fasta] 참조]
참조 게놈이 표시되면 참조 게놈의 시퀀스가 첫 번째 줄에 나타납니다. 그렇지 않으면 첫 번째 행이 모두 N 으로 표시됩니다.
G 를 누르면 게놈의 어떤 부위를 입력하라는 메시지가 나타납니다. 예 "scaffold_ 10: 1000" 은 첫 번째
1000 비계 1000 베이스.
H (왼쪽) j (위) k (아래) l (오른쪽) 을 사용하여 디스플레이 인터페이스를 이동합니다. 대문자는 빠르게 이동하고 소문자는 느리게 이동합니다.
스페이스바를 사용하여 빠르게 왼쪽으로 (l 과 유사), 백스페이스 키를 사용하여 빠르게 왼쪽으로 (h 와 유사) 이동합니다.
Ctrl+H 왼쪽으로 1kb 베이스 이동 Ctrl+L 오른쪽으로 1kb 기본 거리를 이동합니다.
비교 품질, 염기질량, 뉴클레오티드 등을 색으로 표시할 수 있다. 30 ~ 40 의 기본 또는 비교 품질은 흰색으로 표시됩니다.
20 ~ 30 노란색; 10 ~ 20 녹색; 0 ~ 10 블루.
점 "."을 사용하여 맨 아래와 점 표시를 전환합니다. R 스위치를 사용하여 읽은 이름 등을 표시합니다.
구체적으로 다른 많은 설명이 있습니까? 키를 봅니다.
7.flagstat
BAM 파일의 비교 결과가 제공됩니다.
사용법: samtools flagstat & ltin.bam & gt
$ samtools flagstat 샘플. bam
총 1 1945742+0(QC 통과 판독값+QC 실패 판독값)
# 총 * * * 읽기 수
사본 0+0 개
7536364+0 매핑됨 (63.09%:-nan%)
# 읽은 전체 일치율
1 1945742+0 페어링 시퀀싱
# 몇 번의 읽기가 한 쌍의 읽기에 속합니까?
597287 1+0 read 1
#reads 1 읽기 횟수
5972871+0 리드 2
#reads2 의 읽기 횟수
64 12042+0 올바른 페어링 (53.68%:nan%)
# 정확하게 일치하는 판독값 수: 동일한 참조 시퀀스와 일치하고 두 판독값 사이의 거리가 설정된 임계값을 충족합니다.
6899708+0 및 자체 및 페어링 매핑
# 쌍의 판독값 중 둘 다 참조 시퀀스와 일치하는 판독값 수입니다.
636656+0 싱글 (5.33%:-nan%)
# 참조 시퀀스와 일치하는 단일 판독값과 이전 판독값을 더하면 일치하는 총 판독값이 됩니다.
469868+0, mate 를 다른 chr 에 매핑
#paired reads, 서로 다른 두 참조 시퀀스와 일치하는 두 쌍의 읽기 횟수.
243047+0, mate 는 다른 chr(mapQ & gt;; =5)
# 같은 책, 품질만 비교 >; 읽기 횟수 =5
8. 깊이
각 염기 지점의 시퀀싱 깊이를 가져와서 표준 출력으로 출력하여 보다 큰 번호가 있는 파일에 첨부합니다.
사용법: bam2depth [-rreg] [-q baseqthres] [-q mapqthres] [-b in.bed] < In1.bam > [...]
-r 뒤에 염색체 번호 (영역) 가 옵니다
-q: 깊이를 계산할 때 기본 품질의 최소 질량 값을 시퀀싱해야 합니다.
-Q: 깊이를 계산할 때 비교해야 할 최소 질량 값입니다.
참고: samtools 인덱스; 깊이 전에 완료해야 합니다.
예
Samtools 깊이 accept.bam & gt 깊이
9. 기타 주문
Reheader: bam 파일의 헤더를 대체합니다.
$ samtools reheader & ltin.header.sam > & ltin.bam & gt
Idxstats: "시퀀스 이름, 시퀀스 길이, 비교된 읽기 수, 매핑되지 않은 읽기 수" 라는 4 개의 열이 있는 테이블을 계산합니다. 네 번째 열은 쌍으로 읽을 수 있는 한쪽 끝은 스탠드와 일치하고 다른 쪽 끝은 스탠드의 읽기 수와 일치하지 않아야 합니다.
$ samtools idxstats & ltaln.bam & gt
Rmdup: PCR 중복에서 얻은 판독치를 삭제하고 대응 품질이 가장 높은 판독만 유지합니다.
사용법:? Samtools rmdup [-sS]?
-s-단일 측 읽기. 기본적으로 는 한 쌍의 끝 읽기에만 사용됩니다.
-S 는 한 쌍의 끝 읽기를 단일 끝 읽기로 간주합니다.
10. bam 파일을 fastq 파일로 변환합니다
때로는 참조 시퀀스와 일치하는 판독값을 추출하고 디버깅을 용이하게 하기 위해 소규모의 분석을 수행해야 하는 경우도 있습니다. 이때 bam 또는 Sam 파일을 fastq 형식으로 변환해야 합니다.
Bam 을 fastq 로 변환하는 프로그램을 제공합니다 (http://www.hudsonalpha.org/GSL/information/software/bam2fatq).
$ wget http://www.hudsonalpha.org/GSL/static/software/bam2fastq-1./klls
$ tarzxf bam2 fastq-1.1.0.tgz
$ CD bam2 fastq-1..1.0
$ make
$ ../bam2 fastq < In.bam & gt
1 1.mpileup
Samtools 에는 매우 중요한 명령인 mpileup 도 있는데, 이전에는 pileup 이라고 불렸다. 이 명령은 BCF 파일을 생성한 다음 bcftools 를 사용하여 SNP 와 Indel 을 분석하는 데 사용됩니다. Bcftools 는 SamTools 에 포함된 소프트웨어이며 samtools 의 설치 폴더에 있습니다.
가장 일반적으로 사용되는 매개변수는 2 입니다.
-f 인덱스 파일의 fasta 참조 시퀀스를 입력합니다. -g 를 BCF 형식으로 내보냅니다. 용법과 가장 간단한 예는 다음과 같다
사용법: Sam 도구 mpileup [-ebug] [-c capqcoef] [-r reg] [-f in.fa] [-l list] [-m CAPM apq] Abc.txt
$ samtools mpileup-gsdf genome.fasta abc.bam > Abc.bcf
$ samtools mpileup-gu SDF genome.fasta abc.bam | \
-응? Bcftools 보기-cvng-> Abc.vcf
Mpileup 이 -u 또는 -g 스위치를 사용하지 않으면 이진 BCF 파일이 생성되지 않고 텍스트 파일 (표준 출력으로 출력) 이 생성됩니다. 텍스트 파일 통계 참조 시퀀스에서 각 기본 위치의 비교 이 파일의 각 행은 참조 시퀀스에 있는 기준 사이트의 비교 결과를 나타냅니다. 예를 들면 다음과 같습니다.
비계 _ 1? 284 1 A? 1 1? ,,, ..., ... BHIGDGIJ? 소방
비계 _ 1? 2842 C? 12? , $,,..., ... i.cfgeggcff+
비계 _ 1? 2843 G? 1 1? ,, ..., ...... FDDDDCD? DD+
비계 _ 1? 2844 G? 1 1? ,, ..., ...... 법? AAAA<AA+
비계 _ 1? 2845 G? 1 1? ,, ...... f 65666 166 *
비계 _ 1? 2846 A? 1 1? ,, ..., ...... (1.1111)/kloc-
비계 _ 1? 2847 A? 1 1? ,, +9acggtgaag. +9 acgtgaat. +9 acgtgaag. +9 acgtgaag, +9ACGGTGAAG. +9 acgtgaag. +9 acgtgaag. +9 acgtgaag. +9 acgtgaag. +9 acgtgaag? % ..+......-...)
비계 _ 1? 2848 N? 1 1? AgGGGgGGGGG! ! $! ! ! ! ! ! ! !
비계 _ 1? 2849 A? 1 1? 캐나다 달러, ..., ...! 0000000000
비계 _ 1? 2850 A? 10? , ..., ...? 353333333
Mpileup 은 6 개의 행, 즉 참조 시퀀스 이름을 생성합니다. 위치; 기준 참조 비교할 때 숫자를 읽습니다. 비교; 기초적인 품질을 비교하다. 다섯 번째 열은 더 복잡하며 다음과 같이 설명됩니다.
1'.' 는 참조 시퀀스의 양의 체인과 일치함을 나타냅니다.
2',' 는 참조 시퀀스의 음의 체인과 일치함을 나타냅니다.
3' at cgn' 은 정체인에서 잘못된 매칭을 나타냅니다.
4 "at cgn" 은 음수 체인에서 불일치를 나타냅니다.
5' *' 는 퍼지 기수를 나타냅니다.
"6" 은 일치하는 염기가 읽기의 시작임을 의미합니다. Ascii 코드 뒤에 ""에서 33 을 빼면 비교 품질을 나타냅니다. 이 두 기호는 아래의 염기를 손질하고 염기 () 를 손질한다. , ATCGatcgNn) 은 읽은 첫 번째 염기를 나타냅니다.
7' $' 는 이전 염기를 수정하는 1 회 읽기의 끝을 나타냅니다.
8 일반 공식 "\+[0-9]+[ACGTNacgtn]+" 은 이 사이트 뒤에 삽입된 염기를 나타냅니다. 예를 들어 위의 예에서는 scaffold_ 1 의 2847 뒤에 9 개의 기본 acggtgaag 가 삽입되었습니다. 이것이 del 에 있을 가능성이 높다는 것을 나타냅니다.
9 정규식' -[0-9]+[ACGTNacgtn]+' 은 이 사이트 이후 제거된 염기를 나타냅니다.
Bcftools 를 사용합니다.
Samtools 와 유사한 Bcftools 는 vcf (variant call format) 및 BCF (binary call format) 파일을 처리합니다. 전자는 텍스트 파일이고 후자는 이진 파일입니다.
Bcftools 는 사용하기 쉽습니다. 주 명령은 view 명령이고 그 뒤에는 index, cat 등의 명령이 옵니다. Index 및 cat 명령은 samtools 의 명령과 유사합니다. 여기서 화자는 view 명령을 사용하여 SNP 및 Indel 호출을 수행합니다. 이 명령의 사용 및 예는 다음과 같습니다.
$ bcftools 보기 [-abfgnqsucgv] [-d seqdict] [-l listloci] [-s listsample]
-응? [-I gapsnpratio] [-t murate] [-p varthres] [-p prior]
-응? [-1n 그룹1] [-d min frac] [-u nperm] [-x perm thres]
-응? [-T trioType]in. BCF[ 지역]
$ bcftoolsview-cvng abc.bcf > Snp_indel.vcf
결과 결과 파일은 10 열 (1 참조 시퀀스 이름) 이 있는 vcf 형식입니다. 2 varianti 가 위치한 가장 왼쪽 위치; 3 변수의 ID (기본적으로 설정되지 않고 "."로 표시됨); 4 대립 유전자; 참조 시퀀스 Variant 의 대립 유전자 (여러 대립 유전자가 있는 경우',') 로 구분); 6 변형/참조 품질; 7 개의 필터가 적용되었습니다. 8 개의 변형 정보 (세미콜론으로 구분) 콜론으로 구분된 유전자형 필드의 9 가지 형식입니다 (선택 사항). 10 샘플 유전자형과 각 샘플에 대한 정보 (선택 사항).
예를 들면 다음과 같습니다.
비계 _ 1? 2847? 대답? AACGGTGAAG? 194 ...? 인델 Dp =11; Vdb = 0.0401; Af1=1; Ac1= 2; Dp4 = 0,0,8,3; MQ = 35FQ=-67.5? Gq1/1:235,33,0: 63
비계 _ 1? 3908.? G? 대답? 1 1 1.? Dp =13; VDB = 0.0085;; Af1=1; Ac1= 2; Dp4 = 0,0,5,7; MQ = 42FQ=-63? Gt: pl: GQ1/1:144,36,0: 69
비계 _ 1? 4500? 대답? G? 3 1.5? DP = 8;; VDB = 0.0034;; Af1=1; Ac1= 2; Dp4 = 0,0, 1, 3; Mq = 42fq =-39gt: pl: GQ1/1:6412,0: 2/kloc
비계 _ 1? 458 1 ..? TGGNGG? TGG 145 입니다. -응? 인델 DP = 8;; VDB = 0.0308;; Af1=1; Ac1= 2; Dp4 = 0,0,0,8; Mq = 42fq =-58.5gt: pl: GQ1/1:186,24,0: 45
비계 _ 1? 4644.? G? 대답? 195? Dp = 21; Vdb = 0.0198; Af1=1; Ac1= 2; Dp4 = 0,0, 10,10; Mq = 42fq =-87gt: pl: GQ1/1:228,60,0: 99
비계 _ 1? 4827.? 나카가나? 4.42 ..? 인델 Dp =1; Af1=1; Ac1= 2; Dp4 = 0,0, 1, 0; MQ = 40FQ=-37.5? Gt: pl: gq0/1:40,3,0: 3
비계 _ 1? 4854.? 대답? G? 48? 。 -응? DP = 6;; VDB = 0.0085;; Af1=1; Ac1= 2; Dp4 = 0,0,2,1; Mq = 41; Fq =-36 gt: pl: GQ1/1:80,9,0:16
비계 _ 1? 5 120 ...? 대답? G? 85? 。 -응? DP = 8;; VDB = 0.0355;; Af1=1; Ac1= 2; Dp4 = 0,0,5,3; Mq = 42fq =-51gt: pl: GQ1/1:1/kloc/
8 열에는 변형에 대한 정보 설명이 표시됩니다. 이것이 더 중요합니다. 태그에 대한 설명은 다음과 같습니다.
레이블 형식 설명
AF 1 첫 번째 ALT 대립 유전자의 부위 등위 유전자 빈도 (AF) 의 이중 최대 우도 추정
DP int 원시 읽기 깊이 (품질 필터링 없음)
DP4 int[4] # 고품질 참조 순방향 데이텀, 참조 대칭 이동 데이텀, 대체 및 대체 대칭 이동 데이텀
FQ 국제 공감대의 질. 양성: 샘플 유전자형이 다릅니다. 부정: 그렇지 않습니다
읽은 MQ int rms 매핑 품질 덮어쓰기
PC2 int[2] Phred 그룹 1 샘플의 심방 세동 확률은 그룹 2 보다 (미만) 큽니다
1 그룹과 그룹 2 샘플 사이의 PCHI2 이중 사후 가중 chi 2p 값
PV4 체인 편차, 기본 편차, mapQ 편차 및 꼬리 거리 편차의 이중 [4] P 값
정수 비율 PCHI2
RP int # 교체는 더 작은 PCHI2 를 생성합니다
트리플/페어링 제한이 있는 유전자형 가능성이 있는 CLR int Phred 대수비
삼항 제약 없이 UGT 현이 가장 가능성이 높은 유전자형 구성입니다.
Trio 제약 조건이 있는 CGT 문자열의 가장 가능성있는 구성
BCF 도구를 사용하여 변종 호출의 결과를 얻은 후. 결과를 다시 필터링해야 합니다. 주로 비교 결과의 8 번째 열에 있는 정보를 기준으로 합니다. 여기서 DP4 행은 특히 중요합니다. 4 개의 데이터를 제공합니다. 1 일치 결과는 양수 체인과 일치하고, 2 일치 결과는 음수 체인과 일치하며, 3 일치 결과는 양수 체인 변형에서, 4 일치 결과는 음수 체인 변형에서 일치합니다. (값 3+ 값 4) 를 특정 임계값보다 크게 설정할 수 있습니다. 이는 변수로 간주됩니다. 예를 들면 다음과 같습니다.
$ perl -ne 'print $_ if /DP4=(\d+), (\d+), (\ d+)/& & amp ($3+$4) > =10 & & amp ($3+$4)/($1+$2+$3+$4) > = 0.8' SNP _ indel.vcf &