230316 Bioinfo Study-1 (Genome alignment, Sorting)

정즁 (Jiwoong Jung)·2023년 3월 16일
0

Bioinfo_Study

목록 보기
5/8
post-thumbnail

1. Alignment와 sorting이란?

① alignment

  • 시퀀싱한 reads를 reference genome 상의 적절한 위치에 맵핑(배열)하는 것을 의미함.

② Sorting

  • 일반적으로 SAM파일이나 BAM파일은 read 데이터가 맵핑된 순서대로 정렬되어있지 않음.
  • 따라서, 맵핑된 결과를 분석하기 전에 reference genome 상에서 위치에 따라 데이터를 순서대로 재정렬하는 과정.

2. Alignment & Sorting process

① Bowtie alignment 자동화 script 확인하기

  • 본인의 설정에 맞게 잘 설정하기
    ex) reference 위치, 변수 선언에서 파일명 및 확장자 확인하기
$ more bowtie_ATAC.pl
@files = <*_trimmed_1.fastq.gz>;

foreach $file (@files)
{
$file=~s/_trimmed_1.fastq.gz//;
print "`bowtie2 --threads 4 --local --maxins 2000 -x /g/korbel2/StrandSeq/Test_HJ/reference/bowtie2_mm10/genome_mm10 -1 ".$file."_trimmed_1.fastq.gz -2 ".$file."_trimmed_2.fastq.gz 2> ".$file.".bowtie.log | samtools view -bT /g/korbel/shared/datasets/refgenomes/mouse/Mus_musculus_mm10.fa - > ".$file.".raw.bam`;\n\n";
}

수정본

@files = <*_trimmed_1.fq.gz>;

foreach $file (@files)
{
$file=~s/_trimmed_1.fq.gz//;
print "`bowtie2 --threads 4 --local --maxins 2000 -x /home/user/Justin2/jwoong/reference/mm10_index -1 ".$file."_trimmed_1.fq.gz -2 ".$file."_trimmed_2.fq.g
z 2> ".$file.".bowtie.log | samtools view -bT /home/user/Justin2/jwoong/reference/mm10.fa - > ".$file.".raw.bam`;\n\n";
}

Bowtie2 options / Samtools view option
--threads 4 : 쓰레드 4개 사용
--local : local read assignment (지역 매칭)
--maxins 2000 : read1과 read2 사이의 genome이 2000bp
-x : reference 위치
-1 : paired-end에서 read1
-2 : paired-end에서 read2
| : OR
view -bT : sam파일을 bam파일로 변환(+reference sequence를 포함)

② 자동화 script를 이용해 모든 sample에 대한 명령어 생성

perl bowtie_ATAC.pl > bowtie_ATAC_auto.pl
$ more bowtie_ATAC_auto.pl
`bowtie2 --threads 4 --local --maxins 2000 -x /home/user/Justin2/jwoong/reference/mm10_index -1 mESC_ATACseq_day0_1_atac2_trimmed_1.fq.gz -2 mESC_ATACseq_da
y0_1_atac2_trimmed_2.fq.gz 2> mESC_ATACseq_day0_1_atac2.bowtie.log | samtools view -bT /home/user/Justin2/jwoong/reference/mm10.fa - > mESC_ATACseq_day0_1_a
tac2.raw.bam`;

`bowtie2 --threads 4 --local --maxins 2000 -x /home/user/Justin2/jwoong/reference/mm10_index -1 mESC_ATACseq_day0_2_atac2_trimmed_1.fq.gz -2 mESC_ATACseq_da
y0_2_atac2_trimmed_2.fq.gz 2> mESC_ATACseq_day0_2_atac2.bowtie.log | samtools view -bT /home/user/Justin2/jwoong/reference/mm10.fa - > mESC_ATACseq_day0_2_a
tac2.raw.bam`;

③ script 실행

./bowtie_ATAC_auto.sh
$ more bowtie_ATAC_auto.sh
#!/bin/bash
#module load Bowtie2/2.3.2-foss-2016b
#module load SAMtools/1.3.1-foss-2016b
perl bowtie_ATAC_auto.pl

※ 추가

  • 권한이 없어서 실행이 안되는 경우
$ chmod +x ./bowtie_ATAC_auto.sh

or

$ perl bowtie_ATAC_auto.pl
profile
We will find a way. We always have.

0개의 댓글