MSA: multiple sequence alignment 여기에 관한 이론적인 설명은 나중에 또 입 털어드림 ㅇㅇ 아 참고로 MSA 관련해서 다른건 다 결과가 제대로 나왔는데 툴 관련해서 결과가 안나왔어요 이게 암만 찾아도 답이 없어서 좀 더 알아보고 수정할 가능성이 있음 시범조교 앞으로 오늘은 시범조교 가짓수가 좀 많은데 그 중에서도 FASTA 파일들을 좀 올리고자 한다. 이거 말고도 pfam에서 두갠가 받았는데 그건 걍 가서 암거나 받으면 된다. 해당 파일은 박테리아의 16s rRNA 시퀀스가 들어있는 파일이다. FASTA 파일이라 메모장 있으면 일단 열 수는 있다. 리눅스에서는 gedit으로 만들고 편집하고 다 했다. (vim 안씀) rRNA 시퀀스는 Silva에서 가져왔다. 고마워요 실바! Ag..
파이참 쓰다보니 키보드 먹통돼서 재부팅 여러번 했다. 이것도 갈 때 된 듯... *참고로 그냥 리드나 파싱으로 긁어오는 방법은 첫 글에서 썼으므로 생략한다. Iteration 활용하기 근데 들어도 이건 뭔 기능인가 싶긴 함. from Bio import SeqIO identifiers = [seq_record.id for seq_record in SeqIO.parse("/home/koreanraichu/sequence.gb", "genbank")] print(identifiers) 뭐야 wrap 넣어줘요... 레코드와 for문을 조합해서 원하는 데이터(ID나 시퀀스, description)만 가져올 수 있다. from Bio import SeqIO identifiers = [seq_record.id fo..
오늘껀 근데 하면서 나도 이해 못했음... SeqRecord를 만들려면 뭘 또 모셔와야 하는데 바로 from Bio.SeqRecord import SeqRecord 이놈이다. 이정도면 복잡한 거 돌리려면 아주 모셔오는데만 열댓줄 쓰게 생겼는데??? 텐서플로우나 저기 그 넘파이 판다스처럼 합쳐버리지 그러냐... (걔네는 일단 한 번 데려오면 다 써먹을 수 있음) 레코드 생성하기 이모지 넣고싶은데 이거 리눅스라 이모지 넣는 법을 모름... 아무튼 레코드는 이렇게 생성하면 된다. from Bio.SeqRecord import SeqRecord from Bio.Seq import Seq EcoRI=Seq("GAATTC") # ECoRI sequence ECoRI_r=SeqRecord(EcoRI) #로 레코드를 ..
전에요? 아니 그건 가져온거고. 시퀀스도 텍스트나 리스트처럼 인덱싱과 슬라이싱이 된다. 방법도 똑같다. 그래서 그건 생략할 예정임... 그리고 그거 아니어도 분량이 많아요 또. .count() 특정 문자열이 몇 개인지 세 준다. 뭐 시퀀스에서 아데닌이나 구아닌 갯수 세주고 그런거다. 이걸 이용하면 특정 단백질 시퀀스에서 특정 아미노산(카테고리면 겁나 세야된다...)이 차지하는 비율도 볼 수 있다. 쉬어가는 코너-Primer에서 GC함량 구하기 아 이거 중요합니다. Primer 만들 때 중요한 요소 중 하나가 GC 함량이다. 참고로 여기서는 두 가지 방법으로 구해볼건데 첫번째는 .count()를 이용해 G와 C의 수를 세서 전체 DNA 염기 수로 나누는 거고, 두번째는 바이오파이썬의 모듈을 이용하는 방법이..
참고로 다른 코딩글은 여기다가 안 올린다. 코드블럭도 없고 카테고리도 없어서 어지간한 코딩 이야기는 노션과 워드프레스에 올리는 중... 아니면 미디움이나. 근데 이건 우째도 올렸네? 아 생물학 카테고리가 있잖아요. Biopython은 생물정보학에서 쓰는건데 마침 심심하던 차에 잘됐다 써봐야징 해서 어제 깔았다. 리눅스의 경우 pip install bio(안되면 biopython)으로 걍 터미널에서 깔면 된다(우분투 20.02 LTS 기준). 윈도우마냥 pip 있는 데 안 찾아가도 됨 ㄹㅇ 편함. 근데 파이참 바로가기 없는 건 너무한 거 아니냐고... 내가 터미널 열고 직접 모시러 가야것냐... *Notes: Biopython을 사용하려면 사용할 기능에 맞는 모듈을 모셔와야 한다. 코드에 그게 생략되는 경..
하는김에 어? 이거 되나? 해서 찾아봄. 미분 > f D(f,"x") a * (5 * x^4) + b * (2 * x) 미분은 이런 식으로 한다. 근데 계산은 안 해준다. 믿고보는 알파신이 짱이다 > f D(f,"x") exp(x) y=e^x를 미분하면 이게 정상이다. 으아아 미분했는데 왜 그대로야 정상입니다 손님 편미분 마려워요? > f D(f,'x') 2 * x * y^2 + 2 * y # x로 미분해주세요 > D(f,'y') x^2 * (2 * y) + 2 * x + 1 # y로 미분해주세요 저 D에서 기호를 바꿔주면 알아서 편미분이 된단다. 위 코드는 각각 x로 한 번, y로 한 번 미분한 결과. (그러니까 어쨌든 한 번 미분했다) > D(D(f,'x'),'y') 2 * x * (2 * y) + ..
공식 번외편도 따로 나갑니다. as.formula() y~x y ~ x 이놈은 문자고 as.formula("y~x") y ~ x 이놈은 공식이다. 뭔 차이인지는 모르겠다. > measurevar="y" > groupvars=c("x1","x2","x3") paste(measurevar,paste(groupvars,collapse="+"),sep="=") [1] "y=x1+x2+x3" 이놈도 문자인데 as.formula(paste(measurevar, paste(groupvars, collapse=" + "), sep=" ~ ")) y ~ x1 + x2 + x3 이놈은 공식이다. 역시 뭔 차이인지 모른다. 공식의 구조 t=y~x1+x2 이렇게 공식을 만들어서 확인해보면(아, 참고로 f=as.formula(..
쿡북 분량은 일단 짧다. 다음것도 짧다. grep() v=c("피카츄","피츄","라이츄","에몽가","따라큐") w=c("Alticuno","moltres","zapdos","lugia","Ho-oh") 참고로 오늘의 시범조교다. grep("따라큐",v) [1] 5 grep은 문자를 찾아주는 함수. grep("alticuno",w) integer(0) ...인데 대소문자를 가린다. grep("alticuno",w,ignore.case=TRUE) [1] 1 그래서 ignore.case=TRUE를 줘야 대소문자 상관 없이 찾아준다. ^와 $ 각각 문자의 시작과 끝을 지정해서 찾아주는 것. grep("^피",v) [1] 1 2 # 시작 문자 지정하기 grep("츄$",v) [1] 1 2 3 # 끝 문자 지정..
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.