본문 바로가기
생물정보학/Tools

[LINUX] FASTQ에서 random read 골라내기

by HanJoohyun 2017. 12. 7.
반응형

 

 

 

안녕하세요 한주현입니다.

 

오늘은 FASTQ에서 random하고 read1, read2 pair에 맞춰서 read를 골라내는 방법


에 대하여 알아보겠습니다.

 



 LINUX command 사용

 

FASTQ에서 random read 골라내기 - 준비물


준비물

1) LINUX (Ubuntu, CentOS 등)

linux 명령어를 사용하여 진행합니다.


2) 실습 FASTQ 파일

https://raw.githubusercontent.com/KennethJHan/blogdata/master/read_1.fastq

https://raw.githubusercontent.com/KennethJHan/blogdata/master/read_2.fastq

Size: 2.5KB, 2.5KB


실습파일은 제가 그냥 10개의 read pair로 만든 파일입니다 ㅎㅎ;;


 

 

FASTQ에서 random read 골라내기 - 실행

아래와 같이 쉘 스크립트를 작성합니다.


1
2
3
4
5
6
7
8
9
10
11
#!/bin/bash
 
samplename=$1
n=5
 
paste read_1.fastq read_2.fastq |\
awk '{ printf("%s",$0); n++; if(n%4==0) { printf("\n");} else { printf("\t\t");} }' |\
shuf |\
head -${n} |\
sed 's/\t\t/\n/g' |\
awk -F"\t" -v sample=$samplename '{ print $1 > samplename"_1.fastq"; print $2 > samplename"_2.fastq"}'
cs


첫 번째 인자로 들어가는 samplename은 결과 파일을 쓸 때 나오는 이름입니다.


4번 라인의 n은 골라낼 read의 수를 말합니다.


스크립트를 실행하고 나면


한 쪽 read에서 각각 n개의 read들이 무작위로 pair에 맞게 골라집니다 ㅎㅎ..




오늘은 FASTQ에서 random하게 read를 골라내는


방법에 대하여 알아봤습니다.


부디 여러분들께 도움이 되셨음 좋겠습니다 ㅎㅎ.


그럼 다음 시간에 만나요!


 

 참고 링크: https://www.biostars.org/p/6544/


 


반응형

댓글