Showing posts with label de novo assembly. Show all posts
Showing posts with label de novo assembly. Show all posts
Monday, October 10, 2011
Sunday, July 17, 2011
Optimization of de novo transcriptome assembly from NGS data
제목이 상당히 인상적인라서 함봐야 할거 같단 생각에 선택한 논문.
요즘 NGS data assemblers는 대부분 De bruijn graph 방식으로 assembly 하는데 선택 옵션 중의 하나가 k-mer size. 과연 어떠한 k-mer size를 정해야 하는가에 대해 고민하게 된다.
velvet의 경우 1.palindrome을 피하기 위해 홀수로 2.당연한 것이지만 read length보다는 작게해야 한다고 한다. 이 k-mer의 size는 specificity와 sensitivity의 trade-off 라고, 즉 k-mer의 길이가 길어지면 specificity가 높아지는 반면 sensitivity가 떨어진다. 이들이 경험적인 해결책으로 내놓은 것은 다음 공식을 따른다.
Ck = C*(L-k+1)/L
여기서 C는 standard coverage, Ck는 k-mer coverage, L은 read length, k는 k-mer size로 경험상 Ck가 최소 10은 되야 하고 20이 넘어가면 이는 "wasting" coverage가 된다고 한다(위 공식에서 풀어서 생각하면 일반적인 coverage를 구하기 위해 read count * read length / genome size를 하는데 read length 대신에 read에서 나올 수 있는 k-mer의 수를 곱해준 것으로 각 base에서 몇 개의 k-mer가 cover되는가, 즉 말그대로 k-mer coverage를 구하게 되는 것이다).
abstract를 보자면..
de novo assembly of transcriptome의 최적화를 위해 여기서는 두가지 방법을 제시한다. 한가지가 Multiple-k method, 다른 한가지가 STM(Scaffolding using Translation Mapping) method. Multiple-k method는 말그대로 k-mer size 다양하게 해서 assembly 한다는 것이고 STM method는 가장 유사하다고 여겨지는 이용가능한 reference proteome을 이용해서 같은 protein에 mapping되는 contig들을 scaffolding 하는것. 이 두 방법을 사용해서 catfish, 매기에 transcriptome 을 분석하였단다.
음.. 굉장히 별거 아닌거 같이 보인다.. k-mer 의 길이를 다양하게 하는 것은 velvet등의 assembler에서의 권장 사항이며 reference based assembly 역시 velvet에서 columbus라는 모듈로 나온것인데.. 뭐 끝까지 함 봐보자.
intro가 상당히 긴데 기억할 만한 것은 higher expressed 되는 transcript의 경우 k-mer 길이를 길게 함으로 해서 더욱 긴 contig를 만들수 있는데 반해 poorly expressed 되는 transcript경우에는 짧은 k-mer size가 났단다. 결국 이 k-mer의 길이의 선택은 어느것에 초점을 맞추느냐인 주관적인 문제라고. 음.. abstract 만 보고 reference based assembly에 대해 뻔하고 했는데.. 여기서도 다양한 선례를 보인다. 다만 선례들은 close relative genome을 이용했으므로 제한적이라는 것. genome을 사용했다는 건 reference로 사용한 genome의 evolutionary distance가 멀수록 nucleotide difference가 클 수 밖에 없으므로. 이 문제의 해결 방법으로 amino acid sequence를 이용한다는 것.
아하. 이 논문의 차별성은 보통은 다양한 k-mer 길이를 이용하여 테스트를 해보기는 하나 결국은 하나의 k-mer size를 정해서 분석하는데 반해 이 논문은 다양한 k-mer에서 나온 결과를 전부 이용한 다는 것이며, 보통 reference based assembly에서 genomics sequence가 사용되는데 반해 여기서는 amino acide sequence를 사용한다는 것.
아래 두 표에서 보듯이 k-mer size를 늘려가면 확실히 sensitivity는 줄어드나(table1에서 reference coverage 감소) contig의 average coverage는 늘어남을 알 수 있다(table2의 rpkm 값 증가). 여기서 집고 넘어가는 것 중에 하나가 k-mer size가 늘어날 수록 rpkm의 mean은 커지고 동시에 SD도 커진다는 것. 즉 k-mer size가 커지면 적은 수의 다양한 expression level을 보이는 transcript의 assembly가 된다는것. 곧 k-mer size마다 assembly 결과 특징이 다르다.
아래표는 모기의 trascriptome 데이터 가지고 evaluation을 해본 것이다.
그래서 이 논문에서는 다양한 k-mer size를 이용하는 두가지 방법을 제시. 하나가 subtractive Multiple-k 와 additive Multiple-k.
subtractive Multiple-k : 큰 k-mer size로 assembly 하고 나서 nonassembled read만 모아서 작은 k-mer size로 assembly
additive Multiple-k : subtractive Multiple-k와는 달리 큰 k-mer size로 assemble 했을때 contig 생성에 참여한 read를 제거하지 않고 다시 중복해서 작은 k-mer size로의 assembly에 사용. 이렇게 되면 contig에 redundancy가 생기게 되는데 CD-HIT-EST를 이용해서 clustering을 한뒤 가장 긴 contig만 남긴다.
위 표에서 볼수 있듯이 subtractive Multiple-k는 그다지 나아진 점이 없는걸로 보인다. 반면 additive Multiple-k의 결과는 상당히 개선됨을 보인다. 이 논문에서 찝어서 이야기 하는 것중 하나가 No. of transcript로 보면 Multiple-k가 19 k-mer보다 나은게 없어보이지만 100이상인 contig의 수가 2배 이상이라는 것(커버하는 transcript의 수는 비슷할지라도 그 transcript의 cover 면적은 Multiple-k가 훨씬 좋다는 것. 그렇다면 cover 했다는 definition이 뭐냐? blastn을 돌렸을때 query의 95%가 align에 참여하고 reference의 99% identity가 있을 경우를 의미 한다. 곧 query 대비 길이가 95%가 넘어가면 그 transcript를 커버했다고 보는 것).
STM method : initial assembly 결과 contig를 translation해서 reference proteome에서 orthologous region을 찾는것. 만약 서로 다른 contig의 translated amino acid가 하나의 protein에 mapping된다면 이를 scaffolding 하는 것이다. 이 과정에서 initially unassembled read를 사용하느냐 마느냐에 따라 STM+ 와 STM-로 나뉜다. 자세한 과정은 아래 그림을 참조한다.
요즘 NGS data assemblers는 대부분 De bruijn graph 방식으로 assembly 하는데 선택 옵션 중의 하나가 k-mer size. 과연 어떠한 k-mer size를 정해야 하는가에 대해 고민하게 된다.
velvet의 경우 1.palindrome을 피하기 위해 홀수로 2.당연한 것이지만 read length보다는 작게해야 한다고 한다. 이 k-mer의 size는 specificity와 sensitivity의 trade-off 라고, 즉 k-mer의 길이가 길어지면 specificity가 높아지는 반면 sensitivity가 떨어진다. 이들이 경험적인 해결책으로 내놓은 것은 다음 공식을 따른다.
Ck = C*(L-k+1)/L
여기서 C는 standard coverage, Ck는 k-mer coverage, L은 read length, k는 k-mer size로 경험상 Ck가 최소 10은 되야 하고 20이 넘어가면 이는 "wasting" coverage가 된다고 한다(위 공식에서 풀어서 생각하면 일반적인 coverage를 구하기 위해 read count * read length / genome size를 하는데 read length 대신에 read에서 나올 수 있는 k-mer의 수를 곱해준 것으로 각 base에서 몇 개의 k-mer가 cover되는가, 즉 말그대로 k-mer coverage를 구하게 되는 것이다).
abstract를 보자면..
de novo assembly of transcriptome의 최적화를 위해 여기서는 두가지 방법을 제시한다. 한가지가 Multiple-k method, 다른 한가지가 STM(Scaffolding using Translation Mapping) method. Multiple-k method는 말그대로 k-mer size 다양하게 해서 assembly 한다는 것이고 STM method는 가장 유사하다고 여겨지는 이용가능한 reference proteome을 이용해서 같은 protein에 mapping되는 contig들을 scaffolding 하는것. 이 두 방법을 사용해서 catfish, 매기에 transcriptome 을 분석하였단다.
음.. 굉장히 별거 아닌거 같이 보인다.. k-mer 의 길이를 다양하게 하는 것은 velvet등의 assembler에서의 권장 사항이며 reference based assembly 역시 velvet에서 columbus라는 모듈로 나온것인데.. 뭐 끝까지 함 봐보자.
intro가 상당히 긴데 기억할 만한 것은 higher expressed 되는 transcript의 경우 k-mer 길이를 길게 함으로 해서 더욱 긴 contig를 만들수 있는데 반해 poorly expressed 되는 transcript경우에는 짧은 k-mer size가 났단다. 결국 이 k-mer의 길이의 선택은 어느것에 초점을 맞추느냐인 주관적인 문제라고. 음.. abstract 만 보고 reference based assembly에 대해 뻔하고 했는데.. 여기서도 다양한 선례를 보인다. 다만 선례들은 close relative genome을 이용했으므로 제한적이라는 것. genome을 사용했다는 건 reference로 사용한 genome의 evolutionary distance가 멀수록 nucleotide difference가 클 수 밖에 없으므로. 이 문제의 해결 방법으로 amino acid sequence를 이용한다는 것.
아하. 이 논문의 차별성은 보통은 다양한 k-mer 길이를 이용하여 테스트를 해보기는 하나 결국은 하나의 k-mer size를 정해서 분석하는데 반해 이 논문은 다양한 k-mer에서 나온 결과를 전부 이용한 다는 것이며, 보통 reference based assembly에서 genomics sequence가 사용되는데 반해 여기서는 amino acide sequence를 사용한다는 것.
아래 두 표에서 보듯이 k-mer size를 늘려가면 확실히 sensitivity는 줄어드나(table1에서 reference coverage 감소) contig의 average coverage는 늘어남을 알 수 있다(table2의 rpkm 값 증가). 여기서 집고 넘어가는 것 중에 하나가 k-mer size가 늘어날 수록 rpkm의 mean은 커지고 동시에 SD도 커진다는 것. 즉 k-mer size가 커지면 적은 수의 다양한 expression level을 보이는 transcript의 assembly가 된다는것. 곧 k-mer size마다 assembly 결과 특징이 다르다.
아래표는 모기의 trascriptome 데이터 가지고 evaluation을 해본 것이다.
그래서 이 논문에서는 다양한 k-mer size를 이용하는 두가지 방법을 제시. 하나가 subtractive Multiple-k 와 additive Multiple-k.
subtractive Multiple-k : 큰 k-mer size로 assembly 하고 나서 nonassembled read만 모아서 작은 k-mer size로 assembly
additive Multiple-k : subtractive Multiple-k와는 달리 큰 k-mer size로 assemble 했을때 contig 생성에 참여한 read를 제거하지 않고 다시 중복해서 작은 k-mer size로의 assembly에 사용. 이렇게 되면 contig에 redundancy가 생기게 되는데 CD-HIT-EST를 이용해서 clustering을 한뒤 가장 긴 contig만 남긴다.
위 표에서 볼수 있듯이 subtractive Multiple-k는 그다지 나아진 점이 없는걸로 보인다. 반면 additive Multiple-k의 결과는 상당히 개선됨을 보인다. 이 논문에서 찝어서 이야기 하는 것중 하나가 No. of transcript로 보면 Multiple-k가 19 k-mer보다 나은게 없어보이지만 100이상인 contig의 수가 2배 이상이라는 것(커버하는 transcript의 수는 비슷할지라도 그 transcript의 cover 면적은 Multiple-k가 훨씬 좋다는 것. 그렇다면 cover 했다는 definition이 뭐냐? blastn을 돌렸을때 query의 95%가 align에 참여하고 reference의 99% identity가 있을 경우를 의미 한다. 곧 query 대비 길이가 95%가 넘어가면 그 transcript를 커버했다고 보는 것).
STM method : initial assembly 결과 contig를 translation해서 reference proteome에서 orthologous region을 찾는것. 만약 서로 다른 contig의 translated amino acid가 하나의 protein에 mapping된다면 이를 scaffolding 하는 것이다. 이 과정에서 initially unassembled read를 사용하느냐 마느냐에 따라 STM+ 와 STM-로 나뉜다. 자세한 과정은 아래 그림을 참조한다.
아래 표가 simulated read를 STM method을 이용해서 assembly 한 결과. 에러는 적은데 반해 maximum length랑 N50이 커진 것을 알 수 있다. 그리고 이 STM method가 transcript length나 adundance에 bias가 있는지도 확인했는데 그런건 없단다.
마지막으로 STM method의 한계점에 대해서 이야기 하는데.. 어떻게 보면 STM method가 EST로 orthology 찾는거랑 비슷한데 다른 논문에서 말하길 비교하자고 하는 두 종 중 하나의 종의 transcriptome이 완성됐다면 그 정확도가 상당히 높다는 것. 또한 비교하고자 하는 종의 evolutionary distance가 멀어짐에 따라 prediction 할 수 있는 ortholog는 줄어들지만 accuracy는 거의 똑같다고. 곧 이를 STM method에 적용해서 보자면 complete transcriptome을 사용한다면 reference의 evolutionary distance에 상관없이 low error rate의 결과를 얻을 것이라는 것.
Friday, July 15, 2011
A Practical Comparison of De Novo Genome Assembly Software Tools for NGS Tech.
de novo assembly에 대해서 여러가지 툴들을 비교 분석한다. 음.. abstract를 보면 너무 뻔한 소리를 하고 있긴 한다만.. 그래도 그 과정이 궁금하기에 한번 보자.
intro를 보자면
아하.. quality-value를 input으로 하는 것은 SHARCGS와 ALLPATHS-LG 밖에 없단다.
memory saving과 data inquiry의 편의성을 위해서 요즘 assembler는 크게 두가지 형태의 data structure를 채택하는데
1. string-based model : Greedy-extension algorithm 채택, 상대적으로 작은 사이즈의 게놈에 이용
2.graph-based model : OLC (overlap-layout consensus)와 DeBruijn graph를 이용한 방식, complex genome을 핸들링 하는데 사용
요즘 assembler의 bottleneck은 어떻게 repetitive fragment를 처리하냐인데 paired end로 수습하려는 시도가 있다. 두번째 큰 문제는 시간이 엄청 걸린다는 것, 이것을 해결하기 위해 thread의 병렬화 이용.
아래 그림은 이제 이 논문에서 비교하려는 24개의 assembler를 그들이 취급하는 data structure에 따라 분류한 그림
이 논문에서는 24가지 전체 비교는 아니고 8가지 assembler로만(이것들이 4개의 assembly strategy를 대표) 4개의 genome에 대해서 test 한다. 물론 이 논문의 목적은 각각의 assembler의 performance 비교 (memory cost, assembly accuracy, completeness, size distribution of contigs) 하는 것.
result를 보자면..
speed 랑 memory 를 얼마나 차지하나를 보는데.. 건질건 없다. 4개의 quad core CPU, 32GB of RAM에서 실행한건데... 그냥 De Buijn graph를 이용하는 것들이 메모리도 적게 먹고 빠르다.
그 담엔 accuracy랑 integrity를 봤는데.. 뭐 accuracy와 integrity의 정의가 뭐 그닥 fancy 하지 않다. 그냥 굉장히 단순하게 계산을 했다. "shorter than Ybp" 라고 한건 오타가 아닐까 생각이 들고 integrity 를 정의 할때 contig의 cover region에 대한 redundancy를 왜 고려하지 않았을까란 생각이 든다. 그냥 mapped contig의 길이의 총합을 이용했는데.. 이건 좀 정확한 의미의 integrity가 아닐거란 생각이 든다.
이 논문은 끝까지 안보련다.. 시간 낭비란 생각이 들어서
------------------------checkList-----------------------
1.string based model 이란게 정확하게 뭔지.. 알고리즘적인 접근 필요
intro를 보자면
아하.. quality-value를 input으로 하는 것은 SHARCGS와 ALLPATHS-LG 밖에 없단다.
memory saving과 data inquiry의 편의성을 위해서 요즘 assembler는 크게 두가지 형태의 data structure를 채택하는데
1. string-based model : Greedy-extension algorithm 채택, 상대적으로 작은 사이즈의 게놈에 이용
2.graph-based model : OLC (overlap-layout consensus)와 DeBruijn graph를 이용한 방식, complex genome을 핸들링 하는데 사용
요즘 assembler의 bottleneck은 어떻게 repetitive fragment를 처리하냐인데 paired end로 수습하려는 시도가 있다. 두번째 큰 문제는 시간이 엄청 걸린다는 것, 이것을 해결하기 위해 thread의 병렬화 이용.
아래 그림은 이제 이 논문에서 비교하려는 24개의 assembler를 그들이 취급하는 data structure에 따라 분류한 그림
이 논문에서는 24가지 전체 비교는 아니고 8가지 assembler로만(이것들이 4개의 assembly strategy를 대표) 4개의 genome에 대해서 test 한다. 물론 이 논문의 목적은 각각의 assembler의 performance 비교 (memory cost, assembly accuracy, completeness, size distribution of contigs) 하는 것.
result를 보자면..
speed 랑 memory 를 얼마나 차지하나를 보는데.. 건질건 없다. 4개의 quad core CPU, 32GB of RAM에서 실행한건데... 그냥 De Buijn graph를 이용하는 것들이 메모리도 적게 먹고 빠르다.
그 담엔 accuracy랑 integrity를 봤는데.. 뭐 accuracy와 integrity의 정의가 뭐 그닥 fancy 하지 않다. 그냥 굉장히 단순하게 계산을 했다. "shorter than Ybp" 라고 한건 오타가 아닐까 생각이 들고 integrity 를 정의 할때 contig의 cover region에 대한 redundancy를 왜 고려하지 않았을까란 생각이 든다. 그냥 mapped contig의 길이의 총합을 이용했는데.. 이건 좀 정확한 의미의 integrity가 아닐거란 생각이 든다.
이 논문은 끝까지 안보련다.. 시간 낭비란 생각이 들어서
------------------------checkList-----------------------
1.string based model 이란게 정확하게 뭔지.. 알고리즘적인 접근 필요
Thursday, June 16, 2011
ALLPATHS: De novo assembly of whole-genome shotgun microreads
ALLPATHS 첫 논문. 이 담으로 ALLPATHS2가 있었고 그리고 바로 아래 포스팅 논문이 나왔다. ALLPATHS-LG가 ALLPATHS에서 나온 것이기 때문에 ALLPATHS를 잘 이해해놔야 한다(이 논문 나왔다고 genomeweb에 봤을때 한참 Velvet 이랑 씨름하고 있었을 때라 이건 또 무슨 아류작이냐는 생각에 볼생각도 안했는데.. 요즘 드는 생각이 전문가라면 이유 막론하고 전부 다 알고 있어야 하는거 같다. "이건 볼필요 없어" 이런 생각없이).
Monday, June 13, 2011
High-quality draft assemblies of mammalian genomes from massively parallel sequence data
AllPaths-LG의 논문.
대충 훑어 봤는데.. supplementary를 봐야겠단 생각밖에 안드네.
위 표가 AllPaths-LG에서 제시한 NGS sequencing 할때의 model이다. 세가지를 포인트로 찝었는데(1.insert size 종류를 가능한 적게, 2. sequencing 길이의 1.8로 insert size 만들기, 3. long insert(=jump) 만들기) 재밌는건 두번째 포인트. sequencing되는 길이의 1.8로 insert size를 만들어서 두 양쪽 read가 overlap되게 해서 하나의 긴 read가 되도록 한다.
AllPaths 보다 개선된 점 5가지를 나열했는데.. 이건 아직 정확하게 이해가 안된다(supplementary랑 AllPaths의 원 프로그램 논문을 봐야 할듯).
그리고 capillary sequencing이랑 SOAP이랑 비교했는데, capillary가 확실히 좋긴한데 AllPaths-LG가 많이 따라잡았고 SOAP은 거의 모든 면에서 AllPaths-LG보다 떨어진다. 다만 long-assembly accuracy는 SOAP이 더 좋은걸로 나온다.
아.. 마지막으로 segmental duplication이랑 assembled genome에서의 gap이 과연 뭔가 하는 설명이 나오는데 솔직하게 segmental duplication은 잘 못찾는다고 additional work가 필요하다고 하고. understanding gaps는.. 이게 참 맘에 들었는데. 어찌보면 내가 궁금했던 것 중에 하나 였다. 이들이 말하길 gap을 보니까 long repeat 이 대부분이였지만 또한 대부분의 gap이 long repeat이라기 하기엔 짧은게 많았는데.. assembled sequence에다가 read를 mapping 해보니까 gap 부분의 coverage가 낮더라. 곧 coverage 자체가 AllPaths-LG에서 assembly 하기에 적지 않나 라는거다. 그럼 왜 coverage가 낮나? 아마도 GC content등의 recalcitrant sequence content에 의한 영향이 아닌가 싶네(이에 대해선 논문 의 9,18번 주석 논문 참조).
대충 훑어 봤는데.. supplementary를 봐야겠단 생각밖에 안드네.
위 표가 AllPaths-LG에서 제시한 NGS sequencing 할때의 model이다. 세가지를 포인트로 찝었는데(1.insert size 종류를 가능한 적게, 2. sequencing 길이의 1.8로 insert size 만들기, 3. long insert(=jump) 만들기) 재밌는건 두번째 포인트. sequencing되는 길이의 1.8로 insert size를 만들어서 두 양쪽 read가 overlap되게 해서 하나의 긴 read가 되도록 한다.
AllPaths 보다 개선된 점 5가지를 나열했는데.. 이건 아직 정확하게 이해가 안된다(supplementary랑 AllPaths의 원 프로그램 논문을 봐야 할듯).
그리고 capillary sequencing이랑 SOAP이랑 비교했는데, capillary가 확실히 좋긴한데 AllPaths-LG가 많이 따라잡았고 SOAP은 거의 모든 면에서 AllPaths-LG보다 떨어진다. 다만 long-assembly accuracy는 SOAP이 더 좋은걸로 나온다.
아.. 마지막으로 segmental duplication이랑 assembled genome에서의 gap이 과연 뭔가 하는 설명이 나오는데 솔직하게 segmental duplication은 잘 못찾는다고 additional work가 필요하다고 하고. understanding gaps는.. 이게 참 맘에 들었는데. 어찌보면 내가 궁금했던 것 중에 하나 였다. 이들이 말하길 gap을 보니까 long repeat 이 대부분이였지만 또한 대부분의 gap이 long repeat이라기 하기엔 짧은게 많았는데.. assembled sequence에다가 read를 mapping 해보니까 gap 부분의 coverage가 낮더라. 곧 coverage 자체가 AllPaths-LG에서 assembly 하기에 적지 않나 라는거다. 그럼 왜 coverage가 낮나? 아마도 GC content등의 recalcitrant sequence content에 의한 영향이 아닌가 싶네(이에 대해선 논문 의 9,18번 주석 논문 참조).
Monday, May 16, 2011
Parallel, tag-directed assembly of locally derived short sequence reads
예전에 생명과학연구소 소속이였을 때는 아침에 출근하면 genomeweb에 소개된 논문 한번 훑는게 습관이였는데.. 어느 순간 그 습관을 잃어버렸다. 확실히 그 때가 새로운 경향이라던지 어떠한 식의 분석으로 논문들이 나왔는지 대략적인 감각이 있었는데.. 요즘은 그러한 것에 대해 생각이나 대화가 적어진걸로 보아 확실히 뭔가를 잘 못하고 있는 듯 하다. 이번 새로운 블로그는 하루하루 genomeweb에서 소개된 논문 중 관심가는 논문이나 아니면 뭐 서핑하다 찾은 논문들을 간략하게 정리하려 한다(어짜피 abstract 와 그림정도만 볼거라서..).
이번 논문은 여기. 네이쳐 메소드에 2010 년초에 나온 논문. 제목을 보는 순간.. 아.. 회사에서 de novo assembly 한다는데.. 아무 생각 없이 그냥 depth만 높인다던지 아니면 platform을 섞는다는 것 같은 뻘짓을 안하게 할 수 있겠다는 생각이 들어서.. 함 봐보자.
위 그림이 이 논문의 핵심인거 같은데..
그림과 그림의 설명으로 추론(?) 하자면 일단은 500bp 정도로 라이브러리 만들고 양 끝에 tag-adjacent adaptor를 붙인다. 이런 것들을 죽 연결되도록 붙인다. 그담 random하게 shearing 한다. 그뒤 brekpoint-adjacent adaptor를 붙인다. 그런 담에 forward primer는 tag-adjacent adaptor에 매치되게 reverse primer는 breakpoint-adjacent adaptor에 매치 되도록 제작해서 pcr 한다. 그러면 a 그림의 마지막 그림처럼 될거고. 이게 이 프로토콜의 핵심인데..
위에 쓴 것이 너무 주저리 주저리 써서 이해가 안되는데.. 결국 읽어 보니.. 정리하자면. 목표는 시작점은 같고 끝점이 다른, 즉 시작점은 같지만 길이가 다른 insert library를 만드는것(paired-end니까 양끝의 read가 생길거라서 한쪽은 시작점 다른 한쪽은 끝점). 그렇게 되면 시작점의 read는 은 그 library의 tag로 쓸 수 있고 끝 점의 read는 그 library의 다양한 위치에서의 read니까, 그 끝점의 read만 assembly 하면 subassembly가 된다는것.
여기까지만 보자.
이번 논문은 여기. 네이쳐 메소드에 2010 년초에 나온 논문. 제목을 보는 순간.. 아.. 회사에서 de novo assembly 한다는데.. 아무 생각 없이 그냥 depth만 높인다던지 아니면 platform을 섞는다는 것 같은 뻘짓을 안하게 할 수 있겠다는 생각이 들어서.. 함 봐보자.
위 그림이 이 논문의 핵심인거 같은데..
그림과 그림의 설명으로 추론(?) 하자면 일단은 500bp 정도로 라이브러리 만들고 양 끝에 tag-adjacent adaptor를 붙인다. 이런 것들을 죽 연결되도록 붙인다. 그담 random하게 shearing 한다. 그뒤 brekpoint-adjacent adaptor를 붙인다. 그런 담에 forward primer는 tag-adjacent adaptor에 매치되게 reverse primer는 breakpoint-adjacent adaptor에 매치 되도록 제작해서 pcr 한다. 그러면 a 그림의 마지막 그림처럼 될거고. 이게 이 프로토콜의 핵심인데..
위에 쓴 것이 너무 주저리 주저리 써서 이해가 안되는데.. 결국 읽어 보니.. 정리하자면. 목표는 시작점은 같고 끝점이 다른, 즉 시작점은 같지만 길이가 다른 insert library를 만드는것(paired-end니까 양끝의 read가 생길거라서 한쪽은 시작점 다른 한쪽은 끝점). 그렇게 되면 시작점의 read는 은 그 library의 tag로 쓸 수 있고 끝 점의 read는 그 library의 다양한 위치에서의 read니까, 그 끝점의 read만 assembly 하면 subassembly가 된다는것.
여기까지만 보자.
Subscribe to:
Posts (Atom)








