Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit aa4fb80

Browse files
authored
Adicionando código escrito até agora
1 parent e7bd693 commit aa4fb80

File tree

1 file changed

+55
-0
lines changed

1 file changed

+55
-0
lines changed

seletordecds.py

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
""" O objetivo deste script é remover CDS não desejadas,
2+
ao determinar quais as CDS que você deseja manter no
3+
GBK. Para isso devem ser utilizados arquivos GBK full
4+
devidamente anotados.
5+
6+
python a.py 1 2 3
7+
1 = nome da pasta com os gbk input
8+
2 = nome da pasta para os outputs
9+
3 = nome da lista com os genes para serem mantidos
10+
11+
OBS: A formatação dos genes deve ser mantida de forma
12+
simples, apenas uma sigla de gene por linha, que não
13+
deve conter aspas ou espaço.
14+
15+
Desenvolvido por Davi J. Marcon
16+
17+
"""
18+
19+
from Bio import SeqIO
20+
import sys
21+
import os
22+
23+
24+
#Determinando os inputs e outputs
25+
entrada = sys.argv[1]
26+
saida = sys.argv[2]
27+
Lista = [line.rstrip('\n') for line in open(sys.argv[3])]
28+
29+
#abrindo os inputs
30+
for i in os.listdir(entrada):
31+
open(entrada+"/"+i)
32+
33+
#conta o numero de gbs
34+
list = os.listdir(entrada)
35+
number_files = len(list)
36+
print("Foram encontrados" , (number_files), "arquivos")
37+
38+
#cria a pasta de outputs
39+
if not os.path.exists(saida):
40+
os.makedirs(saida)
41+
42+
43+
#Executando código
44+
for i in os.listdir(entrada):
45+
X = []
46+
for seq_record in SeqIO.parse(entrada+"/"+i , 'genbank'):
47+
for feature in seq_record.features:
48+
if feature.type == "CDS" and "gene" in feature.qualifiers:
49+
gene = feature.qualifiers['gene'][0]
50+
if gene in Lista:
51+
X.append(feature)
52+
seq_record.features = X
53+
print("Gerando output para: "+i)
54+
SeqIO.write (seq_record, saida+"/"+i, 'genbank')
55+

0 commit comments

Comments
 (0)