Categories
[후성유전학] 6. Bis-SNP 소프트웨어
Bis-SNP이란?
Bis-SNP에 대한 설명은 다음 논문을 참조했다.
Bisulfite Seq은, methylation pattern을 결정하기 위해, DNA에 미리 bisulfite 처리를 해주고 시퀀싱을 하는 것이다.
이렇게 하고나면 DNA내 unmethylated C는 U로 전환이 되고, PCR 중에 T로 대체된다.
위와 같은 bisulfite seq의 특성으로, 해당 sequence data의 SNP (single nucleotide polymorphism) 호출에는 다음의 복잡성 (Complexity)이 있을 수 있다.
“C (Reference) => T (Alteration) SNP는 Bisulfite로 인해 발생하는 unmethylated C => T의 substitution과 구별이 불가하다.”
특히 C (ref.) => T (alt.) SNP이 human에서 가장 흔하기 때문에 (65% SNP in dbSNP), 이러한 문제는 더 가중된다.
즉 bisulfite seq. 데이터에서 SNP 검출이 어려운 이유가, T라는 nucleotide가 과연 SNP으로 발생된 건지, 아니면 unmethylated C에서 T로 화학적 변환이 된건지 알기가 힘들기 때문이다.
Bis-SNP은 위 문제를 해결하기 위한 툴이다.
Bis-SNP의 기본적인 해결 원리
여기서는 Bis-SNP이 bisulfite-seq에서 SNP 검출하는 것을 어떤 지식 활용해서 해결하는 건지 알아보기로 한다.
기본적인 지식을 먼저 설명할 것이고, Bis-SNP의 통계적인 추가 원리는 나중에 설명하려고 한다.
먼저 다음 그림을 보자.
Bisulfite-seq data에서 SNP을 검출하는 방법에 대해 설명한 그림이다.
그림 a를 한번 봐보자.
맨 위에 Hg19 reference genome이 양 가닥으로 표기되어 있고, 그 아래에 True genotype, 즉 Bisulfite sequencing 하기 전의 DNA sequence가 마찬가지로 양 가닥으로 표기되어 있다.
맨 아래에는 실제로 우리가 직접 확인할 수 있는 데이터인, Bisulfite converted reads들이 표기되어 있다. 각각의 read들이 5’에서 3’, 혹은 3’에서 5’의 방향을 가지고 있는 것 또한 확인할 수 있다.
Bisulfite seq.은, 보통 PCR을 하기 전 서로 상보적인 두 가닥으로 이루어진 DNA에서, 그 중 한 방향의 가닥만 Bisulfite 처리를 하는 것이 보편적이다. Bisulfite 처리가 되는 가닥을 C-strand라고 부르고, 처리되지 않는 가닥을 G-strand라고 부른다.
그림 a의 맨 아래 부분을 계속해서 설명한다. C-strand의 염기들과 G-strand의 염기들을 자세히 살펴보자.
일단 첫번째 염기쌍 (T-G)는 서로 상보적이지 않다.
왜 그럴까? 바로 윗 부분 (True genotype)을 보면 C-G로 구성된 첫 번째 염기쌍 확인할 수 있는데, True genotype (그림 중간)의 unmethylated C가 bisulfite 처리가 되어 맨 아래처럼 T로 치환되었기 때문임을 확인할 수 있다.
그림 a 맨 아래 (Bisulfite converted reads)의 두번째 염기쌍 (T-A)은 서로 상보적이다.
따라서 True genotype의 두 번째 염기쌍 (T-A)도 상보적이다.
다만 해당 염기쌍이 과연 SNP인지 확인하기 위해서는, a 그림 맨 위의 Hg19 reference genome과 True genotype을 서로 alignment 하여 variant를 식별하고 SNP database를 이용해 해당 variant가 진짜 SNP인지 추정하는 과정이 필요하다.
결과적으로 중간의 염기쌍은 C => T SNP로 판명났고, 이것이 bisulfite의 영향을 받지는 않는다.
마지막으로, 그림 a 맨 아래 세 번째 염기쌍 (T-G)는 상보적이지 않다.
하지만 첫 번째 염기와 마찬가지로, Trugenotype의 unmethylated C가 bisulfite 처리되어 T로 바뀐 것을 확인할 수는 있다.
하지만, 우리가 실제 데이터 분석을 할 때에는 True genotype의 결과는 확인하기가 어렵고, 오로지 Bisulfite converted reads data만 확인이 가능하다.
그렇다면 이 세 번째 염기쌍 (T-G)이 SNP인지 아닌지는 어떻게 구분할 수 있을까?
바로 G-strand의 염기를 확인하는 것이다. G-strand는 bisulfite 처리를 받지 않는 가닥이므로, 별다른 sequencing 오류가 없는 이상 그대로 G로 읽힐 테고, 그렇다면 반대편 가닥인 C-strand는 원래 염기 C로 읽히는게 정상이다.
근데 T로 읽히고 있으므로, 해당 염기가 원래는 unmethylated C였다는 것을 알 수 있고, 유추된 원래 염기쌍 (C-G)을 reference genome의 염기쌍들과 비교하여 SNP인지 아닌지를 구별할 수 있다는 것이다.
물론 Bis-SNP tool이 C-strand를 어떻게 찾아내는지, 그리고 sequencing error는 어떻게 찾아내는지, SNP은 어떻게 추정해내는지는 아직 설명을 하지 않았는데, 이 부분은 이후에 좀 더 공부한 후에 설명을 하려고 한다.
이번에는 그림 b를 캡처해서 확인해보자. 그림 b도 마찬가지로 맨 아래 부분에 bisulfite converted read들이 있는데, 여기는 좀 다르다.
즉 heterozygous SNP과 methylation을 보여주고 있다.
천천히 확인해보자. 먼저 그림 맨 아래 첫번째 염기쌍 (T or C) - (G)를 봐보자. 여기서는 기호에 표기된 그대로, 모계에서 받은 염기 C는 unmethylated 되어 T로 치환이 된 것이고, 부계에서 받은 염기 C는 methylated 되어 염기 C 그대로 유지가 된 것이다. 즉 이 case는 heterozygous methylation을 보여주고 있다.
사람의 체세포에 유전자 복사본이 2개 (2n)다. 그 복사본 중 하나는 부계, 다른 하나는 모계에서 물려받은 것인데 (copy number variation이 없다는 가정 하에), 어떤 특정한 대립유전지 (allele)에 대해 하나의 염기가 복사본 내에서 다를 경우가 있다 (모계는 A고 부계는 T라면?). 이것을 heterozygous SNP이라고 한다.
만약 하나의 염기쌍이 부계, 모계에서 둘 다 발견되는데 타 사람들과 다른 변이라면? 이것은 homozygous고, 이 다른 빈도가 1% 이상이라면 homozygous SNP라 한다.
Bis-SNP은 bisulfite seq. 데이터 내에서 heterozygous SNP을 구별하는 기능 또한 가지고 있다.
heterozygous SNP을 구별할 때, 그림 b에서와 같이, 이들은 SNP과 메틸화 패턴의 관계를 강조하며, ‘A’ 염기를 포함한 염색체에서는 주변 C가 메틸화 되지 않아 T로 변환되어 있고, ‘T’ 염기를 포함한 염색체에서는 메틸화된 염기 C가 그대로 유지됨을 설명하고 있다.
즉 C 주변 자리의 염기에 variants가 발생하면, methylation이 일어날 수 있는 CpG site나 CHG site가 파괴될 수 있다는 보고에 기반한 그림이다.
Bis-SNP의 기능
정리하면, Bis-SNP의 보고된 기능은 다음과 같다.
첫째. Cytosine 및 adjacent position에서의 SNP 식별
둘째. Heterozygous SNP 식별
다음글에서는 Bis-SNP의 설치방법에 대해 기술한다.