Coding/Python

코로나바이러스 MSA

나도 이걸 4번까지 하게 될 줄은 몰랐음…개요여러분들 다들 아시죠? 코로나19가 우리를 어떻게 변화시켰는지... 저는 자가격리도 해보고 걸려도 봤습니다. 자가격리때 다들 헐 어카냐 했는데… 저는 태생이 집순이라 1도 데미지 없었고요.. 격리소가 을지로 근처라 원격으로 명동성당 루기아 줘팼습니다. 창고는 언제나 열려있소# 쿼리 조건: SARS-CoV-2 (코로나19), Spike 단백질 위주로 털어보기# 2025년 최신 데이터 + 사람 숙주 조건query = "SARS-CoV-2 AND S[Gene Name] AND 2025[PDAT] AND Homo sapiens[Host]"# 1. ID 리스트 가져오기handle = Entrez.esearch(db="nucleotide", term=query, retm..

Coding/Python

라이노바이러스 유전자로 MSA를 해보았다

얘는 스케일이 좀 다운됐음... 왜냐고요? 게놈이 7500bp거든요. 이걸 인플루엔자나 한타때처럼 2~300개 돌린다? 켜놓고 자고 일어나야됩니다. 아니 리눅스로 하셨어요? 걔로 하면 중간에 뻗음. 맥북으로 돌린건데도 이정돕니다.쟤는 또 뭐 하는 애임?여러분 감기랑 독감이랑 다릅니다. 단순히 증상이 다른게 아니라 원인 병원체가 달라요. 독감은 인플루엔자가 원인이고 감기는 라이노바이러스라는 놈이 원인이거든요? 다른 바이러스도 있다만. 그거 아십니까? 감기에는 약이 없음. 아니 저희 병원가면 약 주는데요? 그건 '증상을 완화시키는' 약이지 감기 바이러스를 조지는 약이 아닙니다. 아니 그럼 감기약이라고 하면 안되는거 아닌가요? 진정하십쇼. 감기 바이러스는 스포닝풀에서 저글링 뽑아내는것처럼 캐많아요. 그걸 일일..

Coding/Python

식물 데이터도 분석이 되나요?

결론부터 말하자면 분석은 된다. 되는데 데이터 리소스를 NCBI로 하는 건 비추다. 왜냐고? 그 이유는 올리면서 말해드림..def plot_lht_family_tree(alignment_file): align = AlignIO.read(alignment_file, "fasta") calculator = DistanceCalculator('identity') constructor = DistanceTreeConstructor(calculator, 'nj') tree = constructor.build_tree(align) fig = plt.figure(figsize=(15, 8)) ax = fig.add_subplot(1, 1, 1) plt.title("Arab..

Coding/Python

인플루엔자의 해마글루티닌 게놈을 받아서 MSA를 해보자

좋은 소식. 이거는 전편 후편 없다. 나쁜 소식. 트리가 한타떄에 비해 안이쁘다.# 모듈import numpy as npimport matplotlib.pyplot as pltimport matplotlib.cm as cm # 넌 뭐냐 from Bio import Entrez, SeqIO # 왼쪽: 일단 털어보자/오른쪽: 시퀀스 다루려면 필요합니다. 필수임. from Bio import AlignIO # 서열 분석해줄 친구from Bio import Phylo # 트리 그릴라면 필요해요 from Bio.Phylo.TreeConstruction import DistanceCalculator, DistanceTreeConstructorimport io # 누구세요?import subprocess # 서브 프..

Coding/Python

한타바이러스의 시퀀스를 받아서 MSA를 해보자 (후편)

https://koreanraichu.tistory.com/824 한타바이러스의 시퀀스를 받아서 MSA를 해보자 (전편)https://koreanraichu.tistory.com/79 Biopython으로 MSA 해보기MSA: multiple sequence alignment 여기에 관한 이론적인 설명은 나중에 또 입 털어드림 ㅇㅇ 아 참고로 MSA 관련해서 다른건 다 결과가 제대로 나왔는데koreanraichu.tistory.com우리 여기서 MSA 돌릴 FASTA파일 저장했죠? 후편에서는 그걸로 분석을 돌릴건데… 아… 이거 트리땜에 개노가다했음… 그것도 트리 얘기하면서 얘기해드리겠음.# 바이러스 DNA가 세그먼트별로 섞여있습니다. (S, M, L)# 이거 분류 안하면 MSA 뻑나요. s_segment..

Coding/Python

한타바이러스의 시퀀스를 받아서 MSA를 해보자 (전편)

https://koreanraichu.tistory.com/79 Biopython으로 MSA 해보기MSA: multiple sequence alignment 여기에 관한 이론적인 설명은 나중에 또 입 털어드림 ㅇㅇ 아 참고로 MSA 관련해서 다른건 다 결과가 제대로 나왔는데 툴 관련해서 결과가 안나왔어요 이게 암만 찾아도koreanraichu.tistory.com여기서 MSA 해볼때 clustalW랑 muscle 안돼서 못했잖아요? 경로 입력해야되는데 리눅스 경로가 어디있는지 안나옴+which 몰라서. 근데 맥이나 리눅스에서는 which를 써서 설치 경로를 찾을 수 있습니다. 그러니까 해보자 이거임.배경뜬금없이 바이러스가 왜 나왔는가… 생물정보학 하면 보통은 유전자 시퀀싱 많이 하죠? 근데 뽑아서 시퀀싱..

Coding/Python

Biopython-dbSNP와 Clinvar

이놈들아 이것도 되면 좀 된다고 말좀 해줘... 참고로 이거 어떻게 알았냐면 면접보는 회사에서 발표주제 중 하나가 저 두놈이었는데 찾다보니 NCBI에서 만든거네? -> Entrez에 있네? -> 비켜봐 시켜볼 게 있어(주섬주섬 파이참을 켠다) 가 된 거임. dbSNP from Bio import Entrez Entrez.email = "blackholekun@gmail.com" # 내가 누구인지 말해주는 과정이 필요하다고... # 이메일은 자기꺼 그냥 쓰세요 handle = Entrez.esearch(db="snp", term="EGFR", retmax="40" ) record = Entrez.read(handle) print(record) 참고로 db에는 snp라고 써야지 dbsnp라고 쓰면 안된다. ..

Coding/Python

Biopython-Q&A

Q&A지만 자문자답이다. 어쨌든 질답은 맞음 Q1. MSA의 그 clustalW랑 MUSCLE은 어찌됐나요? A1. 그거 둘다 깔아야 됩니다. OS 박고 경로 박아서 돌리는 거 나오긴 했는데 트라이 해보려고 했더니 윈도 기준이네... 머슬은 경로 박아서 해봤는데 커맨드만 나와서 MSA는 터미널로 돌리고 있습니다. 리눅스는 clustalw와 MUSCLE 둘 다 일단 설치해두면 터미널에서 돌릴 수 있습니다. (py파일로 아웃풋 설정도 가능) Q2. 일부 건너뛴 챕터들이 있던데...? A2. 실습용 자료 구하기가 빡세거나(얘네도 다 안올려줌...) MSA처럼 할 수 없는 여건인 경우 건너뜁니다. 그래서 16 17(이건 하려고 했는데 wordcloud 하느라 시간 다 잡아먹음) 건너뛰고 케그 했지... Q3. ..

Coding/Python

Biopython으로 KEGG 탐방하기

쿡북 분량 개짧음 진짜 이거보다 짧을수가 없음. KEGG? https://www.genome.jp/kegg/ KEGG: Kyoto Encyclopedia of Genes and Genomes www.genome.jp Kyoto Encyclopedia of Genes and Genomes의 준말. 그렇다, 이름에 교토가 들어간 걸 보면 아시겠지만 일제 DB다. 여기가 메인페이지 여기가 KEGG brite. 본인이 자주 가는 곳이다. 생각보다 쏠쏠한 정보가 많고 KEGG brite의 경우 golden standard dataset이라고 해서 야먀니시가 인공지능 학습시킬 때 쓴 데이터셋(GPCR, 효소, 핵 리셉터, 트랜스포터) 분류별로 약물 타겟을 알려준다. Parsing 파싱할거면 일단 파일이 당신 컴퓨터..

Coding/Python

Biopython-Entrez에서 논문 제목 긁어와서 Wordcloud 만들기

Project wordcloud의 극초반 코드. from Bio import Entrez # 논문 긁어올 때 필요한거 from wordcloud import WordCloud from wordcloud import STOPWORDS import matplotlib.pyplot as plot # Wordcloud 그릴 때 필요한거 Entrez.email = "blackholekun@gmail.com" handle = Entrez.esearch(db="pubmed", term="Arabidopsis[title]", retmax="15") record = Entrez.read(handle) IdList=record['IdList'] # 일차적으로 Pubmed에서 논문을 찾을 수단인 PMID를 입수한다. # 날..

Coding/Python

Biopython-Clustering 입력 인자

이거 튜토리얼에서 그냥 이런게 있다 하고 넘어가서 적음... Distance matrix Data : 분석할 데이터니까 당연히 있어야 한다. Mask(Default: None) : 결손된 데이터를 0으로 표시하는가? (None이면 모든 데이터가 존재하는 것) Weight(Default: None) : 가중치. 거리를 계산할 때 반영된다고 한다. Transpose(Default: 0) : True면 열간의 거리를, False면 행간의 거리를 계산한다. Dist(Default: 'e') : 거리 함수. 디폴트는 유클리드 거리. (Distance 관련해서는 clustering 이론편을 참조) Cluster distance data : 분석할 데이터 mask : 결손된 데이터를 0으로 표시하는가? (None이면..

Coding/Python

Biopython으로 Clusting analysis 하기 (실전편)

와! 드디어 실전인가요? 근데 실전 생각보다 노잼임... Distance matrix 거리 행렬. 두 점간의 거리를 배열해 행렬로 나타낸 것이다. 점이 N개일 때 Distance matrix는 N*N으로 표기할 수 있다. import numpy as np import pandas as pd from Bio.Cluster import distancematrix data=np.array([[0, 1, 2, 3],[4, 5, 6, 7],[8, 9, 10, 11],[1, 2, 3, 4]]) matrix = distancematrix(data) # 뭐야 이거 왜 한영키 안먹어요 distances = distancematrix(data, dist='e') print(distances) [array([], dtype..

Coding/Python

Biopython으로 Clusting analysis 하기 (이론편)

분량도 분량인데 spyder에서 한영키가 안돼서 그거땜시 늦었음... 이게 한 글에 다 쓰기엔 좀 분량도 분량인데 이게 생각보다 설명이랑 코딩이랑 나뉘어있어서 이론편 실전편 나눕니다. 이건 clustering 중 하나인 hierarchical clusting. 오늘 할 게 대충 이런거다. Cluster? 비슷한 특성을 가진 데이터 집단을 클러스터라고 한다. 데이터의 특성이 비슷하면 같은 클러스터, 다르면 다른 클러스터에 속한다. 클러스터링 하는 방법이 여러개가 있는데 여기서는 k-mean, k-median, k-medoid랑 hierarchical clustering에 대해 그냥 개 간단하게 설명하고 넘어간다. Hierarchical clustering 앞에 k-들어가는 것과 달리 계층적 클러스터링이라고..

Coding/Python

Biopython으로 Sequence motif analysis 하기

모티브 찾으면 구조 모티브가 나오는데 이거는 '단백질이나 핵산과 같은 사슬 모양의 생체 분자에서 진화적으로 관련이 없는 다양한 분자에서 나타나는 일반적인 3차원 구조'로 정의한다. 근데 여기서 다루는 모티브는 그거 말고 시퀀스 모티브... 대충 이런거다. 위 그림은 뭔 시퀀스인지는 모르겠으나 3, 4, 5번째 염기가 GAA가 압도적으로 많은 듯. 오늘은 대충 from Bio import motifs 이런거 부른다. Motif object 객체 생성하기 from Bio import motifs from Bio.Seq import Seq instances=[Seq("TGTCGTATCG"),Seq("GTAAATAGCC"),Seq("GTAAATAACC"),Seq("TCGCGGAGCC"),Seq("ATGTGCCA..

Coding/Python

Biopython으로 Phylogenetic tree 그리기

걍 메가 쓰세여... 메가가 편해... 짱이야 메가... 계통수? 계통수... 그러니까 Phylogenetic tree는 이런거다. (...) 유전자나 단백질 시퀀스 분석(균이라면 16s rRNA라던가)을 통해 얘네가 얼마나 가까운지를 알아내게 되면 그걸 저런 식으로 그려서 나타내는 것. 저렇게 생물 종에 따라 그리는 경우도 있고, 특정 단백질의 homolog나 다른 생물종에서 같은 역할을 하는 단백질에 대해서 저걸 그리기도 한다. 와! 계통수! 그려보자! from Bio import Phylo tree = Phylo.read("/home/koreanraichu/Deinococcus.ph", "newick") 이걸 쓰면 그릴 수 있는데... 어디가 일로와 끝까지 듣고 가... 저것만 쓰면 그려는 주는데 ..

홈으로 돌아가기

검색 결과

"search" 검색 결과입니다.