텍스트 중에 특정 문자가 포함되어 있는지, 어디에 있는지 찾아야 할 때가 있다. 그때는 아래와 같은 방법을 상용한다. 1. 특정 문자열이 포함되어 있는지 확인할때string = 'test test test'if 'test in string:print string 2. 특정 문자열이 포함된 위치를 확인할 때string = "this is test string"print string.find("test") 3. 특정 문자열이 여러번 포함된 경우import rest = [m.start() for min re.finditer('test', 'test test test test')] print st
NCBI의 많은 정보가 Genbank 형식으로 저장되어 있다. 하지만 여기에서 내가 원하는 유전자의 단백질이나 DNA의 서열을 얻는 것은 초보자에게 어려울 수 있다. 아래의 파이선 코드를 이용하여 genbank파일에서 단백질과 DNA서열을 얻는 방법을 소개한다. 1. 먼저 NCBI에서 genbank파일을 얻는다. 이 링크 페이지를 예로들어보자. 링크를 눌러 NCBI에 들어가면 Clostridium thermocellum 의 full-genome 정보가 Genbank 형식으로 보여진다. 먼저 이 정보를 다운받기 위해 오른쪽 위에 Send를 누르고, Complete Record, File 을 선택한 후에 Format 부분에서 Genbank(full)을 선택해 준다. 만약 Full버전이 아닌 그냥 Genban..
바이오인포매틱스를 업으로 한다면 모를 수 없는 웹사이트가 NCBI(www.ncbi.nlm.nih.gov) 이다. 미국 NIH에서 운영중인 이 웹사이트는 유럽의 EMBL-EBI (http://www.ebi.ac.uk)와 더불어 가장 큰 DNA시퀀스 데이터베이스라고 할 수 있다. 그런데 살펴보다 보면 이 웹사이트의 정보가 '참 믿을 수 없다'는 생각이 들 때가 있다. 본인이 겪은 예를 들면, 보통 박테리아에 16s gene DNA 가 2개 이상 있는 경우가 흔하다. 그런데 이들의 시퀀스는 매우 비슷하다. 따라서 여러개 중 어느것을 이용해도 보통 무방하다. 어느날, 어느 박테리아에서 16s 시퀀스를 두개 얻었는데 이것이 완전히 다른 경우가 있었다. 이런경우 어느것을 사용해야 할지 매우 막막하게 된다. 그리고 ..
시퀀싱을 하면 결과가 보통 FASTQ 포멧으로 나온다. 하지만 가끔은 FASTA포멧이 필요할 때가 있다. FASTQ 포멧을 FASTA포멧으로 변경하는 방법을 소개한다. 리눅스 또는 맥의 터미널을 이용한다고 가정한다. cat filename.fastq | paste - - - - | sed 's/^@/>/g'| cut -f1-2 | tr '\t' '\n' > filename.fasta 조금 복잡해 보일 수 있으나 의외로 간편하게 아무런 프로그램을 설치하지 않고도 포멧 변경이 가능하다. 여러개의 파일을 한꺼번에 바꾸려면 다음과 같이 for 구문을 사용하면 된다. for x in *.fastq;do cat $x | paste - - - - | sed 's/^@/>/g'| cut -f1-2 | tr '\t' '..