전체 글
아 이건 솔직히 슈뢰딩거도 예외처리 못하지.
-
일단 Entrez랑 Text랑 추가된 기능이 조금 다름. 기본 맥락은 같습니다. 공통 기능 워드클라우드용 마스킹 이미지를 불러오기 위한 파일 창 추가 from argparse import FileType import tkinter from tkinter import filedialog 추가 소환한 모듈(...) root = tkinter.Tk() root.withdraw() dir_path = filedialog.askopenfilename(parent=root,initialdir="/home/koreanraichu",title='Please select a directory',filetypes = (("*.png","*png"),("*.jpg","*jpg"),("*.gif","*gif"))) image..
워드클라우드 코드에 기능 추가일단 Entrez랑 Text랑 추가된 기능이 조금 다름. 기본 맥락은 같습니다. 공통 기능 워드클라우드용 마스킹 이미지를 불러오기 위한 파일 창 추가 from argparse import FileType import tkinter from tkinter import filedialog 추가 소환한 모듈(...) root = tkinter.Tk() root.withdraw() dir_path = filedialog.askopenfilename(parent=root,initialdir="/home/koreanraichu",title='Please select a directory',filetypes = (("*.png","*png"),("*.jpg","*jpg"),("*.gif","*gif"))) image..
2022.08.22 -
참고로 나도 오늘 처음 들은 개념이다. List comprehension-기본편 a = list(range(9)) print(a) 보통 리스트는 이런 식으로 생성하거나 a = [0,1,2,3,4,5,6,7,8] 이렇게 생성한다. (같은 리스트다) 이걸 리스트 컴프리헨션으로 생성하려면? a = list(i for i in range(9)) print(a) 이렇게 쓰거나 a = [i for i in range(100)] print(a) 쿨하게 대괄호 안에 끼워넣으면 된다. For문 넣기 참고로 본인 신조가 'For문 가는데 While이 국룰'이었는데 얘는 예외다. While이 들어가질 못함... for문과 달리 while은 조건부 반복문이라 그런 듯 하다. a = list(2 ** i for i in ran..
List comprehension참고로 나도 오늘 처음 들은 개념이다. List comprehension-기본편 a = list(range(9)) print(a) 보통 리스트는 이런 식으로 생성하거나 a = [0,1,2,3,4,5,6,7,8] 이렇게 생성한다. (같은 리스트다) 이걸 리스트 컴프리헨션으로 생성하려면? a = list(i for i in range(9)) print(a) 이렇게 쓰거나 a = [i for i in range(100)] print(a) 쿨하게 대괄호 안에 끼워넣으면 된다. For문 넣기 참고로 본인 신조가 'For문 가는데 While이 국룰'이었는데 얘는 예외다. While이 들어가질 못함... for문과 달리 while은 조건부 반복문이라 그런 듯 하다. a = list(2 ** i for i in ran..
2022.08.22 -
이거 근데 우분투 놋북이 뭐가 불만인지 키보드가 안먹히데... 커널 올려줘도 난리여... 안그래도 오늘 진상 만나서 힘들었는데 너까지 왜그러냐... import sys a = int(sys.stdin.readline()) yaksu = [] for i in range(1,a+1): if a % i == 0: yaksu.append(i) yaksu_text = ''.join(str(yaksu)) print('{}의 약수는 {}입니다. '.format(a,yaksu_text)) if sum(yaksu) == 2 * a: print('{}는 자기 자신을 제외한 약수들의 합이 {}와 동일하므로 완전수입니다. '.format(a,a)) 전체 코드는 뜯어보고 자시고 할 것도 없음. 완전수는 자기 자신을 제외한 모든..
완전수 찾는 코드이거 근데 우분투 놋북이 뭐가 불만인지 키보드가 안먹히데... 커널 올려줘도 난리여... 안그래도 오늘 진상 만나서 힘들었는데 너까지 왜그러냐... import sys a = int(sys.stdin.readline()) yaksu = [] for i in range(1,a+1): if a % i == 0: yaksu.append(i) yaksu_text = ''.join(str(yaksu)) print('{}의 약수는 {}입니다. '.format(a,yaksu_text)) if sum(yaksu) == 2 * a: print('{}는 자기 자신을 제외한 약수들의 합이 {}와 동일하므로 완전수입니다. '.format(a,a)) 전체 코드는 뜯어보고 자시고 할 것도 없음. 완전수는 자기 자신을 제외한 모든..
2022.08.22 -
NEB Filter 추가 이제 NEB에서 파는 제한효소들만 볼 수 있습니다. (NEB: 뉴 잉글랜드 바이오랩스. NEB cutter 만든 거기 맞음) Cutter/Finder의 저장 형식 변경 일부 저장 형식이 변경되었습니다. 저장 디렉토리 출력 저장 시 현재 디렉토리를 출력해줍니다. FASTA파일 관련 문제 수정 1. FASTA 파일에 시퀀스가 소문자로 기록되어 있을 경우 제대로 못 찾던 문제를 수정했습니다. 2. FASTA 파일에 >가 여러개 일 경우 에러가 뜨는 대신 맨 위에 있는 >로 진행합니다. 참고로 왜 NEB냐면 거기껄 제일 많이 썼음. Genbank 파일 지원 문제가 하나 있는데 리드랑 파스랑 뭔 차인지 모르겠음. FASTA는 지에딧으로 열리는거라 보기라도 했지... Genbank는 gb파..
Project restriction enzyme: 패치노트NEB Filter 추가 이제 NEB에서 파는 제한효소들만 볼 수 있습니다. (NEB: 뉴 잉글랜드 바이오랩스. NEB cutter 만든 거기 맞음) Cutter/Finder의 저장 형식 변경 일부 저장 형식이 변경되었습니다. 저장 디렉토리 출력 저장 시 현재 디렉토리를 출력해줍니다. FASTA파일 관련 문제 수정 1. FASTA 파일에 시퀀스가 소문자로 기록되어 있을 경우 제대로 못 찾던 문제를 수정했습니다. 2. FASTA 파일에 >가 여러개 일 경우 에러가 뜨는 대신 맨 위에 있는 >로 진행합니다. 참고로 왜 NEB냐면 거기껄 제일 많이 썼음. Genbank 파일 지원 문제가 하나 있는데 리드랑 파스랑 뭔 차인지 모르겠음. FASTA는 지에딧으로 열리는거라 보기라도 했지... Genbank는 gb파..
2022.08.22 -
패치노트 1. 꺾쇠(>)가 하나인 FASTA 파일 한정으로 읽어올 수 있습니다. (Biopython이 꺾쇠 개수에 따라 불러오는 방식이 다름) 2. FASTA 파일을 불러올 경우, 시퀀스 이름란에 FASTA file의 ID영역이 들어갑니다. (사실 description 넣으려다가 너무 길어서...) 3. FASTA 파일을 불러오는 데 성공할 경우에도 멘트가 출력됩니다. (실패할때는 당연히 출력됨) 개고생의 흔적 from argparse import FileType import tkinter from tkinter import filedialog from Bio import SeqIO # 정신사나워서 불러오는거랑 표 분리했습니다...OTL 이쪽이 모듈이다. (뭐가 많음) FASTA_open = input(..
Cutter, Finder 공통 패치: FASTA 파일 불러오는 기능패치노트 1. 꺾쇠(>)가 하나인 FASTA 파일 한정으로 읽어올 수 있습니다. (Biopython이 꺾쇠 개수에 따라 불러오는 방식이 다름) 2. FASTA 파일을 불러올 경우, 시퀀스 이름란에 FASTA file의 ID영역이 들어갑니다. (사실 description 넣으려다가 너무 길어서...) 3. FASTA 파일을 불러오는 데 성공할 경우에도 멘트가 출력됩니다. (실패할때는 당연히 출력됨) 개고생의 흔적 from argparse import FileType import tkinter from tkinter import filedialog from Bio import SeqIO # 정신사나워서 불러오는거랑 표 분리했습니다...OTL 이쪽이 모듈이다. (뭐가 많음) FASTA_open = input(..
2022.08.22 -
정말! 개 노가다끝에... 드디어 해냈음... 일단 도입하는 것 자체는 커터에서 했기때문에 크게 어려운 부분은 없었고, 문제가 좀 있었다. 1. 함수 정의하고 뺑뺑이를 돌렸는데 알파벳이 자꾸 하나만 바뀌는 문제(수정함) 2. 정규식은 찾아바꾸기가 안된다. (sub()은 토씨 하나 안 틀리고 바꿔주는거라 G..T로 찾고 G..T/로 바꾸면 모든 시퀀스가 죄다 G..T/로 바뀐다) 첫 번째 문제는 해결했고 두번째 문제의 경우 찾아바꾸기가 안돼서 정규식이 필요한 효소들은 어떻게 자르는지가 위에만 표시되어 있다. 살려줘요.
Finder 기능추가: 정규식 도입정말! 개 노가다끝에... 드디어 해냈음... 일단 도입하는 것 자체는 커터에서 했기때문에 크게 어려운 부분은 없었고, 문제가 좀 있었다. 1. 함수 정의하고 뺑뺑이를 돌렸는데 알파벳이 자꾸 하나만 바뀌는 문제(수정함) 2. 정규식은 찾아바꾸기가 안된다. (sub()은 토씨 하나 안 틀리고 바꿔주는거라 G..T로 찾고 G..T/로 바꾸면 모든 시퀀스가 죄다 G..T/로 바뀐다) 첫 번째 문제는 해결했고 두번째 문제의 경우 찾아바꾸기가 안돼서 정규식이 필요한 효소들은 어떻게 자르는지가 위에만 표시되어 있다. 살려줘요.
2022.08.22 -
분량+저녁크리로 인해 2부작으로 나눠버림... 이 글의 re모듈은 파이썬에서 사용하는거지만, 앞 글에 있는 기호와 메타문자는 언어를 불문하고 정규 표현식에서 다 쓰인다. https://koreanraichu.tistory.com/118 정규식(Regular Expression)-기호와 메타문자 문자 찾는 것 자체는 find()도 해주는데, 얘는 딱 정확하게 일치하는 문자열만 찾아준다. 그럼 정규식은? 그건 대충 와일드카드같은 거다. 그러니까 find()는 소라빵 찐빵 팥빵 붕 koreanraichu.tistory.com 다른 언어를 사용한다고 해도 앞 글은 한번정도는 읽어보자. re.search() 자... 전에도 서술했지만, find()는 정규식을 주면 그 정규식이랑 일치하는 걸 찾지 정규식으로 검색하..
정규식(Regular Expression)-re모듈 사용법분량+저녁크리로 인해 2부작으로 나눠버림... 이 글의 re모듈은 파이썬에서 사용하는거지만, 앞 글에 있는 기호와 메타문자는 언어를 불문하고 정규 표현식에서 다 쓰인다. https://koreanraichu.tistory.com/118 정규식(Regular Expression)-기호와 메타문자 문자 찾는 것 자체는 find()도 해주는데, 얘는 딱 정확하게 일치하는 문자열만 찾아준다. 그럼 정규식은? 그건 대충 와일드카드같은 거다. 그러니까 find()는 소라빵 찐빵 팥빵 붕 koreanraichu.tistory.com 다른 언어를 사용한다고 해도 앞 글은 한번정도는 읽어보자. re.search() 자... 전에도 서술했지만, find()는 정규식을 주면 그 정규식이랑 일치하는 걸 찾지 정규식으로 검색하..
2022.08.22 -
문자 찾는 것 자체는 find()도 해주는데, 얘는 딱 정확하게 일치하는 문자열만 찾아준다. 그럼 정규식은? 그건 대충 와일드카드같은 거다. 그러니까 find()는 소라빵 찐빵 팥빵 붕어빵 이런 식으로 딱딱 키워드를 찾는거고 정규식은 *빵으로 소라빵 찐빵 붕어빵 팥빵 다 찾는 거지. 참고로 정규식을 쓰려면 re를 불러야 한다. import re ㄱㄱ 정규식 문자 정규식에서 쓰는 문자들과 이게 뭐 하는건지를 간단히 알아보자. . Wildcard(구글 검색에서 *) for i in range(len(pokemon)): if re.search('김.',pokemon[i]): print(pokemon[i]) 김부추 김후추 김양상추 박알타리김치 고등어김치찜 김배추 참고로 전부 본인 포켓몬 이름임. 왜요 ^ ~로 ..
정규식(Regular Expression)-기호와 메타문자문자 찾는 것 자체는 find()도 해주는데, 얘는 딱 정확하게 일치하는 문자열만 찾아준다. 그럼 정규식은? 그건 대충 와일드카드같은 거다. 그러니까 find()는 소라빵 찐빵 팥빵 붕어빵 이런 식으로 딱딱 키워드를 찾는거고 정규식은 *빵으로 소라빵 찐빵 붕어빵 팥빵 다 찾는 거지. 참고로 정규식을 쓰려면 re를 불러야 한다. import re ㄱㄱ 정규식 문자 정규식에서 쓰는 문자들과 이게 뭐 하는건지를 간단히 알아보자. . Wildcard(구글 검색에서 *) for i in range(len(pokemon)): if re.search('김.',pokemon[i]): print(pokemon[i]) 김부추 김후추 김양상추 박알타리김치 고등어김치찜 김배추 참고로 전부 본인 포켓몬 이름임. 왜요 ^ ~로 ..
2022.08.22 -
Finder는 도입하려면 좀 걸립니다... 얘는 아예 정규식+찾아바꾸기가 필요한거라...... 정규식 도입 import pandas as pd import re from datetime import datetime enzyme_table = pd.read_csv('/home/koreanraichu/restriction.csv') enzyme_table2 = pd.read_csv('/home/koreanraichu/restriction_RE.csv') # 정규식 도입을 위해... 어쩔 수 없이 합쳤음... enzyme_table = pd.concat([enzyme_table,enzyme_table2]) enzyme_table = enzyme_table.sort_values('Enzyme') enzyme_t..
Cutter 기능 추가: 정규식 도입Finder는 도입하려면 좀 걸립니다... 얘는 아예 정규식+찾아바꾸기가 필요한거라...... 정규식 도입 import pandas as pd import re from datetime import datetime enzyme_table = pd.read_csv('/home/koreanraichu/restriction.csv') enzyme_table2 = pd.read_csv('/home/koreanraichu/restriction_RE.csv') # 정규식 도입을 위해... 어쩔 수 없이 합쳤음... enzyme_table = pd.concat([enzyme_table,enzyme_table2]) enzyme_table = enzyme_table.sort_values('Enzyme') enzyme_t..
2022.08.22 -
일단... 해당 기능 추가 결과물이고요... 정규식 얘기는 나중에 입 털어드림... import re # 정규식용 모듈 정규식은 얘가 있어야 쓸 수 있다. elif keyword == "name": enzyme_RE = input("효소의 이름이 뭘로 시작하나요? ") enzyme_RE_2 = '^' + enzyme_RE 물론 if문에도 관련 코드를 추가했다. (^ 붙으면 그걸로 시작하는 걸 찾아준다) else: print("Enzyme with start with {0}".format(enzyme_RE)) for i in range(len(enzyme_table)): DB_enzyme = str(enzyme_table['Enzyme'][i]).strip() DB_seq = str(enzyme_table..
Searcher 기능 추가: 그 뭐더라 그 D로 시작하는 그거일단... 해당 기능 추가 결과물이고요... 정규식 얘기는 나중에 입 털어드림... import re # 정규식용 모듈 정규식은 얘가 있어야 쓸 수 있다. elif keyword == "name": enzyme_RE = input("효소의 이름이 뭘로 시작하나요? ") enzyme_RE_2 = '^' + enzyme_RE 물론 if문에도 관련 코드를 추가했다. (^ 붙으면 그걸로 시작하는 걸 찾아준다) else: print("Enzyme with start with {0}".format(enzyme_RE)) for i in range(len(enzyme_table)): DB_enzyme = str(enzyme_table['Enzyme'][i]).strip() DB_seq = str(enzyme_table..
2022.08.21 -
FASTA 파일 지원 1) 일단 사용자가 FASTA파일을 읽어오게 되면 따로 시퀀스 정보 입력을 받을 필요가 없어서 그거 관련도니 처리가 필요함. (시퀀스 이름은 Biopython SeqIO로 FASTA파일 ID 가져올 예정) 2) Biopython의 경우 FASTA파일에 꺾쇠가 하나면 read, 여러개면 parse로 가져오는데 parse로 읽을 걸 read로 가져오면 에러뜸. 에러에 대한 처리가 필요하고... parse로 가져오는 파일은 꺾쇠가 여러개인데, 이게 다르게 말하면 ID랑 시퀀스라 여러개라 그거 읽어오면 여러개를 돌리고 저장까지 해야 하는거라 이거는 Jupyter단에서는 힘듭니다... OTL 그래서 단식만 읽을거임... 3) FASTA 관련된 기능이긴 한데, 본인은 애초에 경로가 고정되어 있..
cutter, finder, searcher에 앞으로 추가할 기능FASTA 파일 지원 1) 일단 사용자가 FASTA파일을 읽어오게 되면 따로 시퀀스 정보 입력을 받을 필요가 없어서 그거 관련도니 처리가 필요함. (시퀀스 이름은 Biopython SeqIO로 FASTA파일 ID 가져올 예정) 2) Biopython의 경우 FASTA파일에 꺾쇠가 하나면 read, 여러개면 parse로 가져오는데 parse로 읽을 걸 read로 가져오면 에러뜸. 에러에 대한 처리가 필요하고... parse로 가져오는 파일은 꺾쇠가 여러개인데, 이게 다르게 말하면 ID랑 시퀀스라 여러개라 그거 읽어오면 여러개를 돌리고 저장까지 해야 하는거라 이거는 Jupyter단에서는 힘듭니다... OTL 그래서 단식만 읽을거임... 3) FASTA 관련된 기능이긴 한데, 본인은 애초에 경로가 고정되어 있..
2022.08.21 -
기본 파이썬에는 두 가지 반복문이 있는데 한놈은 For고 한놈은 While이다. While은 베이직에서 본 거 같은디... (do while loop) 아무튼... 둘 다 반복문이긴 한데, 둘이 맥락은 좀 다르다. 내가 10페이지의 책을 읽는 것을 for와 while을 이용해 설명하자면 For: 1쪽부터 10쪽까지 읽어야징 While: 읽은 페이지 수가 10이 될 때까지 읽어야징 이런 차이가 있다. ...사실 이렇게 말하면 모르시겠져? 그래서 가져왔음. 둘 다 3^1~1^10까지 출력하는 코드인데(사실 저렇게 안하고 프린트문 줘도 됨) For: 1부터 10까지 3에 제곱해 While: j가 있는데 이게 11보다 작을 동안 3에 제곱하고 하나씩 더해 이런 식으로 돌아간다. For문은 범위를 주고 반복하는 ..
For vs While기본 파이썬에는 두 가지 반복문이 있는데 한놈은 For고 한놈은 While이다. While은 베이직에서 본 거 같은디... (do while loop) 아무튼... 둘 다 반복문이긴 한데, 둘이 맥락은 좀 다르다. 내가 10페이지의 책을 읽는 것을 for와 while을 이용해 설명하자면 For: 1쪽부터 10쪽까지 읽어야징 While: 읽은 페이지 수가 10이 될 때까지 읽어야징 이런 차이가 있다. ...사실 이렇게 말하면 모르시겠져? 그래서 가져왔음. 둘 다 3^1~1^10까지 출력하는 코드인데(사실 저렇게 안하고 프린트문 줘도 됨) For: 1부터 10까지 3에 제곱해 While: j가 있는데 이게 11보다 작을 동안 3에 제곱하고 하나씩 더해 이런 식으로 돌아간다. For문은 범위를 주고 반복하는 ..
2022.08.21 -
1. 공통: 이제 어디 자르는지도 나옵니다. 살려줘... 2. Cutter: 제한효소 누락되던 거 수정했습니다. 근데 된건지 모르겠음. def count_func (a,b): while a in b: global site_count global res_loc global res_loc_list loc = b.find(a) site_count += 1 b = b[loc+len(a):] res_loc = loc + 1 res_loc_list.append(res_loc) return site_count, res_loc # 이거 통으로 코드에 넣었더니 if 안에 있는데도 시퀀스 없으면 끝내더라... # 위치 출력은 되는 것 같은데, 이거 더해야 하는데... 이렇게 하면 위치가 출력되긴 한데 문제가 하나 있다. ..
Finder & Cutter 패치1. 공통: 이제 어디 자르는지도 나옵니다. 살려줘... 2. Cutter: 제한효소 누락되던 거 수정했습니다. 근데 된건지 모르겠음. def count_func (a,b): while a in b: global site_count global res_loc global res_loc_list loc = b.find(a) site_count += 1 b = b[loc+len(a):] res_loc = loc + 1 res_loc_list.append(res_loc) return site_count, res_loc # 이거 통으로 코드에 넣었더니 if 안에 있는데도 시퀀스 없으면 끝내더라... # 위치 출력은 되는 것 같은데, 이거 더해야 하는데... 이렇게 하면 위치가 출력되긴 한데 문제가 하나 있다. ..
2022.08.21 -
DB를 구축할 때 수동으로 구축했는데, CSV 구분자가 ,다보니 .로 들어간게 좀 있어서 그거 수정했음... (마른세수) 효소 이름 오타난것도 수정했습니다... 이래서 손끝 다치면 안됨... import pandas as pd enzyme_table = pd.read_csv('/home/koreanraichu/restriction.csv') # 이쪽은 Finder나 cutter에도 쓰이는 그 DB가 맞습니다. enzyme_table2 = pd.read_csv('/home/koreanraichu/restriction_RE.csv') # 이쪽은 restriction site나 cut site에 A,T,G,C가 아닌 다른 알파벳이 들어가기 때문에 여기서 처음 불러오는 DB입니다. enzyme_table = p..
Searcher 만들었음DB를 구축할 때 수동으로 구축했는데, CSV 구분자가 ,다보니 .로 들어간게 좀 있어서 그거 수정했음... (마른세수) 효소 이름 오타난것도 수정했습니다... 이래서 손끝 다치면 안됨... import pandas as pd enzyme_table = pd.read_csv('/home/koreanraichu/restriction.csv') # 이쪽은 Finder나 cutter에도 쓰이는 그 DB가 맞습니다. enzyme_table2 = pd.read_csv('/home/koreanraichu/restriction_RE.csv') # 이쪽은 restriction site나 cut site에 A,T,G,C가 아닌 다른 알파벳이 들어가기 때문에 여기서 처음 불러오는 DB입니다. enzyme_table = p..
2022.08.21 -
공통패치 Cut수 세 주는 기능이 추가되었습니다. Cutter Cut수에 따른 효소 리스트 업 기능이 추가되었습니다. 살려줘... (아직 자르는 위치 안했음) 파일 이름 형식이 변경되었습니다. 그래서 이제 시퀀스 이름도 받습니다. Finder Cut수 세 주는 기능에 따른 출력 형식 수정이 있었습니다. Cut수 세 주는 기능 사실상 엄청난 노가다의 결과...ㅠㅠ (생략) if res_find in sequence: site_count = 0 while sequence.find(res_find) != -1: loc = sequence.find(res_find) site_count += 1 sequence = sequence[loc+len(res_find):] print(enzyme, res_find, se..
Cutter & Finder 패치노트공통패치 Cut수 세 주는 기능이 추가되었습니다. Cutter Cut수에 따른 효소 리스트 업 기능이 추가되었습니다. 살려줘... (아직 자르는 위치 안했음) 파일 이름 형식이 변경되었습니다. 그래서 이제 시퀀스 이름도 받습니다. Finder Cut수 세 주는 기능에 따른 출력 형식 수정이 있었습니다. Cut수 세 주는 기능 사실상 엄청난 노가다의 결과...ㅠㅠ (생략) if res_find in sequence: site_count = 0 while sequence.find(res_find) != -1: loc = sequence.find(res_find) site_count += 1 sequence = sequence[loc+len(res_find):] print(enzyme, res_find, se..
2022.08.21 -
Finder with open ('Result_{0}-{1}-{2}_{3}-{4}.txt'.format(year,month,day,enzyme,search_sequence_name),'w',encoding='utf-8') as f: if search_sequence.find(res_find) != -1: search_sequence = search_sequence.replace(res_find,res_site) print(enzyme,",",cut_feature) print(search_sequence) f.write("{0} | {1} | {2} \n".format(enzyme,res_site,cut_feature)) f.write('Sequence name: {0} \n'.format(search_s..
Cutter와 Finder에 패치가 있었습니다.Finder with open ('Result_{0}-{1}-{2}_{3}-{4}.txt'.format(year,month,day,enzyme,search_sequence_name),'w',encoding='utf-8') as f: if search_sequence.find(res_find) != -1: search_sequence = search_sequence.replace(res_find,res_site) print(enzyme,",",cut_feature) print(search_sequence) f.write("{0} | {1} | {2} \n".format(enzyme,res_site,cut_feature)) f.write('Sequence name: {0} \n'.format(search_s..
2022.08.21 -
사실 전에 만든 코드 이름은 Finder고, 이놈이 커터임. import pandas as pd 이 코드도 판다스가 있어야된다. (DB가 csv) enzyme_table = pd.read_csv('/home/koreanraichu/restriction.csv') enzyme_table = enzyme_table.sort_values('Enzyme') # Finder에도 쓰이는 '그' DB 맞습니다. 현재 수동 구축 중... print(enzyme_table) print(len(enzyme_table)) 아직도 갈 길이 멀지만 일단 D까지 추가했음... 아울러 py파일은 print가 빠집니다. sequence = input("검색할 시퀀스를 입력해주세요: ") 이건 시퀀스 입력받는 코드(아직 이름은 안 받..
제한효소 커터 2편 나왔음사실 전에 만든 코드 이름은 Finder고, 이놈이 커터임. import pandas as pd 이 코드도 판다스가 있어야된다. (DB가 csv) enzyme_table = pd.read_csv('/home/koreanraichu/restriction.csv') enzyme_table = enzyme_table.sort_values('Enzyme') # Finder에도 쓰이는 '그' DB 맞습니다. 현재 수동 구축 중... print(enzyme_table) print(len(enzyme_table)) 아직도 갈 길이 멀지만 일단 D까지 추가했음... 아울러 py파일은 print가 빠집니다. sequence = input("검색할 시퀀스를 입력해주세요: ") 이건 시퀀스 입력받는 코드(아직 이름은 안 받..
2022.08.21 -
패치노트 1. 출력 파일명 형식 변경 저기도 format이 먹힐 줄은 몰랐음 2. 출력 파일의 형식 변경(시퀀스 이름 추가) 3. 깃헙에 해당 코드 py파일도 추가됨 패치 결과 원래 날짜만 추가했었는데 생각해보니 날짜가 같으면 헷갈릴 것 같아서 효소랑 시퀀스 이름도 추가함 시퀀스 이름은 출력 파일에도 저장됩니다. (그래서 이제 세줄임)
제한효소 커터 코드 패치했음패치노트 1. 출력 파일명 형식 변경 저기도 format이 먹힐 줄은 몰랐음 2. 출력 파일의 형식 변경(시퀀스 이름 추가) 3. 깃헙에 해당 코드 py파일도 추가됨 패치 결과 원래 날짜만 추가했었는데 생각해보니 날짜가 같으면 헷갈릴 것 같아서 효소랑 시퀀스 이름도 추가함 시퀀스 이름은 출력 파일에도 저장됩니다. (그래서 이제 세줄임)
2022.08.21 -
근데 NEB커터 쓰세여 그거 좋음 일단 이 코드는 이 시퀀스를 자르는 제한효소들을 찾는 게 아님. 이 효소가 이 시퀀스를 자르는가? 를 보는 코드임다. 이 점 유념해주세요. 그리고 이거 올리면서 Jupyter가 매트랩이랑 비중 같아졌다 코드 Jupyter notebook으로 코딩한거고 나중에 일부 블록은 정리할 예정. import pandas as pd 구축한 csv파일을 가져오고 취급하려면 얘가 필요하다. csv파일은 혹시 써보실 분 계시면 말씀주세요. 참고로 csv파일이 되게 단촐해서 효소 이름, 인식하는 시퀀스, 자르는 시퀀스, 자르는 형태(sticky or blunt)가 들어가 있음. 나중에 여건이 된다면 똑같은 부분을 인식하고 자르는 다른 효소나 처리온도에 대한 정보도 추가할 예정. (물론 출력..
제한효소 커터 만들었음근데 NEB커터 쓰세여 그거 좋음 일단 이 코드는 이 시퀀스를 자르는 제한효소들을 찾는 게 아님. 이 효소가 이 시퀀스를 자르는가? 를 보는 코드임다. 이 점 유념해주세요. 그리고 이거 올리면서 Jupyter가 매트랩이랑 비중 같아졌다 코드 Jupyter notebook으로 코딩한거고 나중에 일부 블록은 정리할 예정. import pandas as pd 구축한 csv파일을 가져오고 취급하려면 얘가 필요하다. csv파일은 혹시 써보실 분 계시면 말씀주세요. 참고로 csv파일이 되게 단촐해서 효소 이름, 인식하는 시퀀스, 자르는 시퀀스, 자르는 형태(sticky or blunt)가 들어가 있음. 나중에 여건이 된다면 똑같은 부분을 인식하고 자르는 다른 효소나 처리온도에 대한 정보도 추가할 예정. (물론 출력..
2022.08.21 -
text = [] while True: input_text = input("wordcloud로 만들 텍스트를 입력해주세요. ") text.append(input_text) if input_text == "": break text = ' '.join(text) text=okt.nouns(text) text = ' '.join(text) 크게는 저 부분을 수정했고, 전체적으로 wordcloud 만들기 위해 입력받는 부분도 간소화했음. (While True 주고 입력 없으면 break 하도록) 참고로 Wordcloud는 안에 들어가는 글자가 많을 수록 멋지게 나옵니다. 이 점 유념하시길.
오케이 따옴표 떼버렸음text = [] while True: input_text = input("wordcloud로 만들 텍스트를 입력해주세요. ") text.append(input_text) if input_text == "": break text = ' '.join(text) text=okt.nouns(text) text = ' '.join(text) 크게는 저 부분을 수정했고, 전체적으로 wordcloud 만들기 위해 입력받는 부분도 간소화했음. (While True 주고 입력 없으면 break 하도록) 참고로 Wordcloud는 안에 들어가는 글자가 많을 수록 멋지게 나옵니다. 이 점 유념하시길.
2022.08.21