2015년 8월 25일 화요일

FASTQ 파일 내의 base count 하기

fasta 파일의 경우에는 fastasize.py 라는 걸 선구자 분들이 만들어 놔서 간단하게 카운트가 되었다. 그래서 매번 fastq 를 fasta 로 변환하고 count 를 했는데 찾다보니 직접 count 할 수 있다는 걸 알게 되었다.

https://www.biostars.org/p/78043/

위의 웹페이지는 일종의 토론을 한 내용이고.. 거의 마지막에 간단한 명령어가 있어서 이것을 애용한다.

grep "^[ACGTN]" test.fastq | tr -d "\n" | wc -m

awk '{s++}END{print s/4}' test.fastq

위는 base number 를 count 하고 밑은 read number 를 카운트 한다.

----------------------
2018년 3월 21일
위의 내용을 수정함.

위에서 base number 를 count 할 때 안 맞는다. 이상해서 찾아보니 quality 에도 ATGCN 이 존재할 수 있기 때문에 그것들까지 count 되는 듯 싶다. 그래서 찾아보니...

awk 'NR%4==2{c++; l+=length($0)}END{print "Number of reads: "c;print "Number of bases in reads: "l}' fastq.file

이라는 방법이 있었고, 다시 해서 맞춰보니 fastasize.py 와 일치하는 수자가 나온다.

댓글 없음:

댓글 쓰기