본문 바로가기

전체 글748

파이썬을 이용한 개인유전체 분석 몇년전 개인유전체 데이터가 보편화 되면 자신이 직접 자신의 유전체 데이터를 분석(해킹)할 수 있도록 가이드를 해줄 책을 하나 만들고자 했다. 옛날옛날부터 블로그에 끄적였던 내용들을 정리할겸,, 겸사겸사 이제 책 만들기에는 여러가지 상황상 힘들것 같고, 몇년동안 다른일들 때문에 돌보지 못했던 내용을 하나씩 풀어볼까 한다. 요즘에는 국내에서도 DTC(소비자직접거래) 방식의 유전자 검사를 통해 혈통분석이라는 이름으로 자신의 조상(ancestry)정보 등을 확인할 수 있는데, 오늘은 이와도 연관된 맛보기 챕터로 "인구 집단 비교" 부분을 공개한다. Demo chapter3 from Hong ChangBum 그럼 이만, 뿅 2020. 12. 15.
정밀 종양학 텍스트마이닝(1) - 문헌에서 변이정보 추출하기 내가 특정 암(또는 질병)에 대한 변이를 모아 놓았다고 할때, 해당 변이가 언급된 논문을 항상 최신으로 업데이트 해주는 경우 해당 변이가 해당 질병에 어떠한 영향을 주는지에 대한 정보를 항상 지켜볼 수 있게 된다. 더 나아가 해당 논문에서 언급된 변이를 논문을 보고 manual curation을 거쳐 knowledge base화 하는데에도 도움을 줄 수 있다. 다음은 BRCA Exchange로 BRCA1/2 mutation의 pathogenicity 정보를 제공하는 데이터베이스로 mutation을 클릭하면 다양한 정보와 함께 해당 mutation이 언급된 논문(제목, 저자, PMID, 해당 mutation이 언급된 본문 내용) 정보를 함께 제공한다. 아래 변이는 BRCA1의 L1750P 변이로 ClinV.. 2020. 12. 15.
도커 entrypoint 회피 및 스크립트 killed 도커 entrypoint로 지정된 스크립트(명령어)를 실행했는데도 한참 후 결과가 리턴되지 않는다면, Killed,,, 프로세스를 강제로 kill했을 수 있다. 1) entry point를 실행하지 않고 bash로 접속한다. 도커 실행시 --entrypoint /bin/bash 옵션을 주고 도커 이미지로 진입한다. 2) 스크립트를 도커 이미지 안에서 실행해본다. 스크립트 실행되다가 Killed 가 나오면 해당 스크립트를 실행하면서 리소스를 너무 잡아 먹기 때문에 걍 linux에서 해당 process를 kill해버린 경우다. 3)그렇다면 도커 설정에서 CPUs, Memory, Swap을 올려라! 4) 다시 스크립트를 실행하면,, 끝 2020. 12. 11.
NGS 데이터 평가하기 얼마전 NIST에서는 RM(Reference Material) 8393을 발표했습니다. RA는 말 그대로 표준이 되는 물질이죠. 이 표준물질은 Human DNA인데요. 그냥 DNA가 아니라 Whole-Genome Variant를 평가할 수 있는 표준물질입니다. 즉 이 DNA의 vaiant들을 모두 정리해 놓았다는 것입니다. 따라서 NGS를 이용하는 여러 분야에서 다양하게 사용될 수 있습니다. 그럼 어떻게 사용될 수 있는지 한번 볼까요? Variants 평가 시나리오 Variants의 평가는 서로 다른 장비간 또는 서로 다른 파이프라인간에 비교하는데 사용되거나 표준물질에서 이미 정의된 variants와 직접 장비/파이프라인 통해 생성된 데이터를 서로 비교할 수 있습니다. Validate Pipeline 당.. 2020. 12. 4.
바이오마커와 정밀종양학(precision oncology) 문헌데이터의 중요성 생물학 문헌 데이터들은 유전자, 단백질(Protein), 화학 성분(Chemical compound) 등 질병 관련 연구에 있어서 중요한 내용을 포함하고 있만 데이터의 양이 방대 하고 산재되어 있어, 연구자들이 일일이 모든 문헌 데이터 를 확인하는 것은 거의 불가능하다. 정밀종양학에 한정하여 환자의 diagnostic, prognostic, predisposing, drug response marker와 gene, variant와의 관계로 한정하여 보면, 1) BRAF V600E와 관련된 논문은 pubmed에서 2004년 5건에서 2017년 454건으로 증가 2) Oncology trial(임상시험)에서 biomarker를 이용한 시험은 전체 시험대비 2000년 ~15%에서 2018년.. 2020. 12. 4.
Deep Genomics 누가 뭐래도 요즘 화두는 deep learning이 아닐까? 그렇다면 현재 genomics 또는 이와 관련하여 어떤 움직임들이 있는지 한번 알아보도록 한다. 유전질환 딥러닝 - Face2Gene 예전 칼 짐머의 "Game of Genomes"의 시즌1의 두번째 에피소드인 "깨어진 코드"편을 보면 이런 장면이 나온다. 칼 짐머가 자신의 염기서열을 시퀀싱 하기로 한후 보스턴의 브리검여성병원의 로버트 그린은 칼 짐머의 얼굴을 유심히 보는 장면이 나온다. “전 지금 유전병에서 나타나는 얼굴의 특징을 찾고 있는 거에요” 브리검여성병원(Brgham and women’s hospital)의 로버트 그린이 말했다. “눈의 모양, 귀가 너무 낮게 있지는 않은지. 귀가 복잡하게 생기진 않았는지” 그린박사는 사무실을 앞뒤로.. 2017. 1. 12.
23andMe 재단장 국내 질병 예측성 유전자 검사 현황 지난 19일 "질병예측성 유전자 검사의 개선방안 공청회"가 진행되었다. 공청회의 질병관리본부의 질병예측성 유전자 검사의 관리에 관한 용역 결과에 대한 세션에서 의하면 유전자 검사를 6개의 카테고리로 나누어 관리하는 방안으로 카테고리 1~4까지는 기존의 유전자 검사에 해당하며 카테고리 5와 6의 경우는 다음과 같은 기준으로 나뉘어 관리하도록 하고 있다. 질병관리본부의 질병예측성 유전자 검사 관리 용역 결과 유전자 검사 분류 이에 유전체기업협의회의 경우 기존 검사와 더불어 질병예측성 유전자검사와 웰니스 유전자 검사의 카테고리로 나누어 관리하고자 하고 있다. 특히 웰니스 유전자 검사의 경우 DTC를 허용하는 것을 골자로 하고 있다. 유전체기업협의회의 유전자검사 분류 방안 미.. 2015. 10. 28.
결함을 허용하는 의존성 있는 태스크의 관리 그래프를 이용한 태스크 표현 흔히 바이오인포매틱스 분석이라고 하는 경우 스크립트나 모듈을 작성하여 일련의 분석을 수행하곤 한다. 그러나 단순한 형태의 일이 아니라 더욱 고난이도의 일을 처리하다가 보면 (물론 대부분이 그렇지만) 태스크의 의존성을 고려해야 하는 경우가 많다. 그래프를 이용하여 이를 표현해 보면서 어떻게 의존성과 결함을 고려한 스케줄러를 만들 수 있는지 생각해 보도록 하자. 총 4개의 노드 (Task1, Task2, Task3, Task4)와 엣지로 구성된 그래프로 각각의 엣지는 다음과 같은 의존성을 가진다. Task1=>[Task2, Task3] Task2=>[Task4] Task3=>[Task4] Task4=>[] 즉, Task1이 끝나야 Task2,3이 수행되고 Task4는 Task2,.. 2015. 10. 13.
BGZF (Blocked GNU Zip Format) Random Access BAM 파일의 경우에는 BGZF를 이용하기 때문에 원하는 곳으로 빠르게 access가 가능하다. 우리가 흔히 사용하는 GZIP (GNU ZIP) 보다는 압축효율 (압축했을때 용량)이 떨어지지만 random access가 가능하다는 잇점으로 인해 BAM 파일(BAM의 경우 재빠르게 자신이 원하는 position을 뷰잉하는데 많이 사용하기 때문)에서 사용하는 기술이다. 용량이 큰 텍스트 파일을 압축해 놓고 파일의 어느 부분이던지 랜덤하게 액세스 가능하기 때문에 그 활용도가 높은데 특히나 클러스터를 이용하는 경우 파일을 분할하는 등의 I/O 작업이 필요 없기 때문에 그 활용이 매우 높다고 할 수 있다. 여러 활용중 하나로 FASTQ 파일에 적용하여 사용하고 있다. FASTQ 응용 일루.. 2015. 7. 1.
Split Reads Split Read (SR) Split Read(SR)는 하나의 read가 분리 (split)된 것으로, 여기서 분리는 read의 일부분이 reference에 align되고 나머지 일부분은 또 reference의 다른 부분에 align된 것으로 Chimeric Alignment라고도 한다. SR은 deletion, insertion, inversion, tandem duplication과 같은 structural variation을 찾는데 유용한 지표로 사용된다. Identification of a deletion in an individual genome by split read analysis SAM에서의 SR 흔적 SAM파일에서는 SR을 표시하는데 SA 태그를 사용한다. SA 태그는 Chimeric.. 2015. 6. 26.
Animated gif from a video clip 짤방이라고 불리는 움직이는 gif를 만들기입니다. 동영상을 짤방으로 만들어주는 GIFBrewery라는 프로그램 구입하여 우선 iShowU 프로그램을 이용하여 화면을 동영상으로 캡처하고 이를 gif로 만들면 아래와 같이 프로그램의 특정 기능을 설명하는데 효과적으로 사용이 가능합니다. 2015. 6. 12.
Docker를 이용한 Bioinformatics 플랫폼 한때? 학회세션이나 기타 개인적인 요청 등으로 유전체 데이터에 대해서 빅데이터의 관점에서 어떻게 클라우드를 활용하느냐?에 대한 이야기를 하고 돌아다니기도 했습니다. 뭐 여러 측면에서 클라우드라는 장점이 있을 수 있겠습니다만 여기서는 가상화 또는 컨테이너 기술을 기반으로 어떻게 활용될 수 있을지에 대해서 알아보겠습니다. 도커라는 컨테이너 기술을 이용한 유전체 데이터 분석에 관한 내용입니다. Flow-based programming (FBP) 구글의 Polymer나 React, KLay Layered, NeoFlow의 기술을 이용한 the-graph를 이용하면 어플리케이션에서 프로세스를 블랙박스화하여 아래처럼 일련의 과정을 정의할 수 있습니다. 이미 이분야에서는 이를 파이프라인이라는 이름으로 부르며 데이터 .. 2015. 4. 29.
Simple consensus approach improves somatic mutation prediction accuracy 지난 동계유전체학회 워크샵의 암유전체 분석을 위한 Somcatic Mutation Calling에 관한 내용입니다. "A simple consensus approach improves somatic mutation prediction accuray"라는 논문을 바탕으로 SomaticSniper, VarScan2, MuTect을 이용하여 각각 somatic call을 수행한 후 각 툴에 대해서 filter를 적용하고 consensus 데이터셋을 만들어 이를 실제 validation하는 과정에 대한 내용입니다. 물론 데이터는 TCGA Benchmark 데이터셋을 이용했습니다. 마지막, validation 부분을 업데이트할 부분이 좀 있는데 우선 공유합니다. Detecting Somatic Mutation -.. 2015. 4. 27.
중국의 유전체 데이터 분석을 위한 질주 아시다시피 중국은 BGI를 통해 시퀀싱 부분에서 타의 추종을 불허하고 있다. 더군다나 시퀀싱 장비면에서도 미국의 complete genomics를 인수까지 하게 되었다. 그나마 한편으로 데이터 분석 부분에서는 3년전 DNANexus와 Seven Bridge Genomics와 같은 클라우드 기반의 Easy Genomics 서비스를 내놓았지만 제대로 워킹하는 것을 본적이 없다. 이제 내공이 쌓였을까? 중국 WuXi PharmaTech의 거침없는 Bioinformatics를 향한 걸음 2000년 설립된 중국 우시(Wuxi AppTech)는 직원수 9,000명 매출 1조에 이르는 CRO(Contract Research Organization, 임상시험 대행 기관)로 단순한 CRO라기 보다는 헬스케어 연구 개발 .. 2015. 4. 24.
유전체와 클라우드 관련 기사 의료-헬스케어 산업의 패러다임을 바꾸는 클라우드 얼마전 국내에서 정부와 공공기관이 민간 클라우드 서비스를 사용할 수 있도록 규정한 클라우드 컴퓨팅 발전 및 이용자 보호에 관한 법률안 (클라우드 발전법)이 제정돼 오는 9월 시행을 앞두고 있습니다. 클라우드 발전법은 정부 부처와 지방자치단체, 공공기관은 앞으로 정보화 사업이나 예산을 편성할 때 먼저 클라우드 도입을 고려해야 합니다. 즉 클라우드가 우선 고려대상이라는 말입니다. 하지만, 공공에서 클라우드를 도입할 경우 도입 업무의 범위나 개인정보보호, 품질 및 안정성에 대한 내용들은 충분한 논의와 합의가 필요한 부분입니다. 클라우드의 도입은 의료나 헬스케어의 경우에는 특히나 원격의료, 환자 데이터 공유 등 서비스 수준이 향상될 것으로 기대되지만 역시 의료법이.. 2015. 3. 23.
Structural Variation NGS Short Reads를 이용하여 Strucural Variation을 찾는데에 있어서 depth of coverage (DOC), paried-end mapping (PEM, PE), split read (SR) 정보를 이용하게 된다. SV를 찾는데에 있어서 reference에 reads를 매핑하고 reference에 정확히 일치하는 않는 (not exact match to reference) read들을 SV를 찾는데 사용한다. 아래와 같이 60과 37이라는 부분은 reference에서 174 bases의 간격을 두고 있으며, 우리는 이 60과 37부분외에도 54 부분을 각각 서로 다른 말단에 가진 두개의 read를 가지고 있다고 하자. 이 reads를 BWA를 이용하여 매핑한 경우 첫번째 re.. 2015. 3. 19.
Bioinformatics (genomics) 트렌드 - 지금 필요한건 스피두 요즘 논문이나 기사를 보면서 Bioinformatics/Genomics 분야의 트렌드를 개인적으로 정리한 글로 본인의 무지에 의해 잘못된 정보를 전달할 수도 있음을 주의하시기 바란다. ㅋㅋㅋ 넘어가야할 허들 - 속도 지금까지는 속도 보다는 클라우드를 이용한 scale-up이 주된 테마였다면 이제는 기존의 파이프라인을 개선하는 방향의 speed-up이 주요 이슈가 되었다. 표준 파이프라인이라고 할 수 있는 BWA, GATK, SAMtools, Picard를 사용하는 경우 50X의 Human genome의 경우 variant call까지 16 코어 서버를 사용하는 경우 68-94시간이 소요된다. 물론 소프트웨어의 버전이나 병렬화를 어디까지 수행하는냐에 따라 이 시간은 달라질 수 있지만 말이다. 여기에 도전장.. 2015. 3. 16.