인생은 언제나 Try and Except
close
프로필 배경
프로필 로고

인생은 언제나 Try and Except

  • 분류 전체보기 (676) N
    • 잡담 (312) N
      • 단문 (106)
      • 장문 (32)
      • 그림있음 (129) N
      • 나야, 언박싱 (44)
    • Coding (179)
      • 코딩잡담 (22)
      • JavaScript (56)
      • Python (81)
      • R (20)
    • BOJ (116)
      • [BOJ] Python (116)
    • 잔머리 엑셀 (68)
  • 홈
  • 태그
  • 방명록

순열조합

워드클라우드 py파일 만드는 김에 순열조합도 코딩했음. 순열: nPr(n개의 원소 중 r개를 중복 없이 늘어놓는 가짓수) 조합: nCr(n개의 원소 중 r개를 픽할 때의 가짓수) # permutation(순열): 서로 다른 n개의 원소 중 r개를 중복 없이 늘어놓는 것 def factorial(a): factorial = 1 for i in range(1,a+1): factorial = factorial * i return factorial # 순열에 팩토리얼이 들어가서 어쩔 수 없어요... # nPr(서로 다른 n개의 원소 중 r개를 중복 없이 늫어놓는 것)을 구하는 공식은 n!/(n-r)!입니다. n = int(input("n에 들어가는 수를 입력해주세요: ")) r = int(input("r에 들어..

  • format_list_bulleted Coding/Python
  • · 2022. 8. 22.
  • textsms

워드클라우드 코드에 기능 추가

일단 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..

  • format_list_bulleted Coding/Python
  • · 2022. 8. 22.
  • textsms

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..

  • format_list_bulleted Coding/Python
  • · 2022. 8. 22.
  • textsms

완전수 찾는 코드

이거 근데 우분투 놋북이 뭐가 불만인지 키보드가 안먹히데... 커널 올려줘도 난리여... 안그래도 오늘 진상 만나서 힘들었는데 너까지 왜그러냐... 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)) 전체 코드는 뜯어보고 자시고 할 것도 없음. 완전수는 자기 자신을 제외한 모든..

  • format_list_bulleted Coding/Python
  • · 2022. 8. 22.
  • textsms
Project restriction enzyme: 패치노트

Project restriction enzyme: 패치노트

NEB Filter 추가 이제 NEB에서 파는 제한효소들만 볼 수 있습니다. (NEB: 뉴 잉글랜드 바이오랩스. NEB cutter 만든 거기 맞음) Cutter/Finder의 저장 형식 변경 일부 저장 형식이 변경되었습니다. 저장 디렉토리 출력 저장 시 현재 디렉토리를 출력해줍니다. FASTA파일 관련 문제 수정 1. FASTA 파일에 시퀀스가 소문자로 기록되어 있을 경우 제대로 못 찾던 문제를 수정했습니다. 2. FASTA 파일에 >가 여러개 일 경우 에러가 뜨는 대신 맨 위에 있는 >로 진행합니다. 참고로 왜 NEB냐면 거기껄 제일 많이 썼음. Genbank 파일 지원 문제가 하나 있는데 리드랑 파스랑 뭔 차인지 모르겠음. FASTA는 지에딧으로 열리는거라 보기라도 했지... Genbank는 gb파..

  • format_list_bulleted Coding/Python
  • · 2022. 8. 22.
  • textsms
Cutter, Finder 공통 패치: FASTA 파일 불러오는 기능

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(..

  • format_list_bulleted Coding/Python
  • · 2022. 8. 22.
  • textsms
Finder 기능추가: 정규식 도입

Finder 기능추가: 정규식 도입

정말! 개 노가다끝에... 드디어 해냈음... 일단 도입하는 것 자체는 커터에서 했기때문에 크게 어려운 부분은 없었고, 문제가 좀 있었다. 1. 함수 정의하고 뺑뺑이를 돌렸는데 알파벳이 자꾸 하나만 바뀌는 문제(수정함) 2. 정규식은 찾아바꾸기가 안된다. (sub()은 토씨 하나 안 틀리고 바꿔주는거라 G..T로 찾고 G..T/로 바꾸면 모든 시퀀스가 죄다 G..T/로 바뀐다) 첫 번째 문제는 해결했고 두번째 문제의 경우 찾아바꾸기가 안돼서 정규식이 필요한 효소들은 어떻게 자르는지가 위에만 표시되어 있다. 살려줘요.

  • format_list_bulleted Coding/Python
  • · 2022. 8. 22.
  • textsms
정규식(Regular Expression)-re모듈 사용법

정규식(Regular Expression)-re모듈 사용법

분량+저녁크리로 인해 2부작으로 나눠버림... 이 글의 re모듈은 파이썬에서 사용하는거지만, 앞 글에 있는 기호와 메타문자는 언어를 불문하고 정규 표현식에서 다 쓰인다. https://koreanraichu.tistory.com/118 정규식(Regular Expression)-기호와 메타문자 문자 찾는 것 자체는 find()도 해주는데, 얘는 딱 정확하게 일치하는 문자열만 찾아준다. 그럼 정규식은? 그건 대충 와일드카드같은 거다. 그러니까 find()는 소라빵 찐빵 팥빵 붕 koreanraichu.tistory.com 다른 언어를 사용한다고 해도 앞 글은 한번정도는 읽어보자. re.search() 자... 전에도 서술했지만, find()는 정규식을 주면 그 정규식이랑 일치하는 걸 찾지 정규식으로 검색하..

  • format_list_bulleted Coding/Python
  • · 2022. 8. 22.
  • textsms

정규식(Regular Expression)-기호와 메타문자

문자 찾는 것 자체는 find()도 해주는데, 얘는 딱 정확하게 일치하는 문자열만 찾아준다. 그럼 정규식은? 그건 대충 와일드카드같은 거다. 그러니까 find()는 소라빵 찐빵 팥빵 붕어빵 이런 식으로 딱딱 키워드를 찾는거고 정규식은 *빵으로 소라빵 찐빵 붕어빵 팥빵 다 찾는 거지. 참고로 정규식을 쓰려면 re를 불러야 한다. import re ㄱㄱ 정규식 문자 정규식에서 쓰는 문자들과 이게 뭐 하는건지를 간단히 알아보자. . Wildcard(구글 검색에서 *) for i in range(len(pokemon)): if re.search('김.',pokemon[i]): print(pokemon[i]) 김부추 김후추 김양상추 박알타리김치 고등어김치찜 김배추 참고로 전부 본인 포켓몬 이름임. 왜요 ^ ~로 ..

  • format_list_bulleted Coding/Python
  • · 2022. 8. 22.
  • textsms
Cutter 기능 추가: 정규식 도입

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..

  • format_list_bulleted Coding/Python
  • · 2022. 8. 22.
  • textsms
Searcher 기능 추가: 그 뭐더라 그 D로 시작하는 그거

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..

  • format_list_bulleted Coding/Python
  • · 2022. 8. 21.
  • textsms

cutter, finder, searcher에 앞으로 추가할 기능

FASTA 파일 지원 1) 일단 사용자가 FASTA파일을 읽어오게 되면 따로 시퀀스 정보 입력을 받을 필요가 없어서 그거 관련도니 처리가 필요함. (시퀀스 이름은 Biopython SeqIO로 FASTA파일 ID 가져올 예정) 2) Biopython의 경우 FASTA파일에 꺾쇠가 하나면 read, 여러개면 parse로 가져오는데 parse로 읽을 걸 read로 가져오면 에러뜸. 에러에 대한 처리가 필요하고... parse로 가져오는 파일은 꺾쇠가 여러개인데, 이게 다르게 말하면 ID랑 시퀀스라 여러개라 그거 읽어오면 여러개를 돌리고 저장까지 해야 하는거라 이거는 Jupyter단에서는 힘듭니다... OTL 그래서 단식만 읽을거임... 3) FASTA 관련된 기능이긴 한데, 본인은 애초에 경로가 고정되어 있..

  • format_list_bulleted Coding/Python
  • · 2022. 8. 21.
  • textsms
  • navigate_before
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • navigate_next
공지사항
전체 카테고리
  • 분류 전체보기 (676) N
    • 잡담 (312) N
      • 단문 (106)
      • 장문 (32)
      • 그림있음 (129) N
      • 나야, 언박싱 (44)
    • Coding (179)
      • 코딩잡담 (22)
      • JavaScript (56)
      • Python (81)
      • R (20)
    • BOJ (116)
      • [BOJ] Python (116)
    • 잔머리 엑셀 (68)
최근 글
인기 글
최근 댓글
태그
  • #알리익스프레스
  • #잔머리엑셀
  • #천원마트깡
  • #BioPython
  • #BOJ
  • #Excel
  • #R
  • #Python
  • #코딩잡담
  • #JavaScript
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바