Interações do Algoritmo Phred/PhrapInterações do Algoritmo Phred/Phrap
Renato David Puga
ObjetivoObjetivo
Visão geral do pacote Phred/Phrap/Consed
Qual informação será disponibilizadaExemplo de uma Implementação
O Projeto (Exemplo)O Projeto (Exemplo)
Submissão de cromatogramas (clones e ortologos)
PARA MAIS INFORMAÇÕES...
http://www.compbionet.org.br/transcript/
IntroduçãoIntrodução
- Leitura dos arquivos cromatogramas- Atribuição de qualidade às bases- Identificação e “mascaramento” de vetores- Seqüência Assembly- Visualização de Assembly
O que é Phred/Phrap/Consed ?
IntroduçãoIntrodução
O que é Algoritmo ?
- Forma estruturada de resolver problemas em uma seqüência lógica.
Utilizando o pacote Phred/PhrapUtilizando o pacote Phred/Phrap
Obtendo o pacotePlataforma
Utilizando o pacote Phred/PhrapUtilizando o pacote Phred/Phrap
Diretórios
Chromat_dir Edit_dir Phd_dir
Executando o programa Executando o programa phredphred
phred -id chromat_dir -pd phd_dir
Lê e processa os arquivos.
Linha de comando:
Grava os arquivos *.phd.1.
Executando o programa Executando o programa phredphred
phred -id chromat_dir -pd phd_dir
Linha de comando:
Executando o programa Executando o programa phredphred
Linha de comando:
phred -id chromat_dir -pd phd_dir
Opções:
-id : Lê e processa os arquivos no diretório chromat_dir.-pd : Grava os arquivos *.phd.1 no diretório phd_dir.
Executando o programa Executando o programa phredphred
Exemplo:Exemplo: .phd.1 .phd.1
Escreve um arquivo de seqüências com o nome de “seq_fasta”.
Executando o programa Executando o programa ph2fastaph2fasta
ph2fasta -id phd_dir -os seqs_fasta -oq seqs_fasta.qual
Linha de comando:
Escreve um arquivo de qualidade com o nome de “seq_fasta.qual”.
Executando o programa Executando o programa ph2fastaph2fasta
ph2fasta -id phd_dir -os seqs_fasta -oq seqs_fasta.qual
Linha de comando:
Executando o programa Executando o programa ph2fastaph2fasta
ph2fasta -id phd_dir -os seqs_fasta -oq seqs_fasta.qual
Linha de comando:
Opções:
-os : Escreve um arquivo de sequência.-pd : Escreve um arquivo com a qualidade das bases.
Exemplo:Exemplo: seqs_fastaseqs_fasta
Executando o programa Executando o programa ph2fastaph2fasta
Exemplo:Exemplo: seqs_fasta.qualseqs_fasta.qual
Executando o programa Executando o programa ph2fastaph2fasta
Executando o programa Executando o programa cross_matchcross_match
cross_match seqs_fasta vector.seq –minmatch 12 –minscore 20 -screen > screen.out
Linha de comando:
Exemplo:Exemplo: screen.outscreen.out
Executando o programa Executando o programa cross_matchcross_match
Exemplo:Exemplo: seqs_fasta.screenseqs_fasta.screen
Executando o programa Executando o programa cross_matchcross_match
Cria um arquivo .ace para que possa serImportado o assembly para consed.
Executando o programa Executando o programa phrapphrap
phrap seqs_fasta.screen –new_ace > phrap.out
Linha de comando:
Exemplo:Exemplo: seqs_fasta.screen.contigsseqs_fasta.screen.contigs
Executando o programa Executando o programa phrapphrap
Pipeline Phred/Phrap/ConsedPipeline Phred/Phrap/Consed
Copiar os arquivos cromatogramaspara o diretório chromat_dir
Executar o phred.Atribui valor de qualidade às basesGera os arquivo *.phd.1
Converte os arquivos *.phd.1 para fasta.Executa ph2fasta.Seqüência nucleotídeos: seqs_fastaValor de qualidade: seqs_fasta.screen.qual
Identifica e “mascara” os vetores. Executar o cross_match.
Assembly Cria o arquivo: seqs_fasta.screen.contigsArquivos assembly: seqs_fasta.screen.acephrap
Visualiza e edita o arquivo assembly consed.
Disponibilizando ResultadosDisponibilizando Resultados
Quais informações?Como será visualizado?Quais ferramentas?
Disponibilizando ResultadosDisponibilizando Resultados
Quais informações?
- FASTA do cromatograma- Início e o Fim da seqüência de qualidade- Vetores encontrados
Disponibilizando ResultadosDisponibilizando Resultados
Como será visualizado?
- Web
Quais ferramentas?
- Linguagem Script Perl- Comandos do shell
Algoritmos / ScriptsAlgoritmos / Scripts
Fasta do cromatograma
1 - Abrir o arquivo seqs_fasta.1 - Abrir o arquivo seqs_fasta.2 - Exibir o conteúdo do arquivo.2 - Exibir o conteúdo do arquivo.
Algoritmo
Algoritmos / ScriptsAlgoritmos / Scripts
Fasta do cromatograma
#!/usr/bin/perl#!/usr/bin/perlprint “Content-type: text/html\n\n”;print “Content-type: text/html\n\n”;
$conteudo$conteudo = ` = `moremore seqs_fasta`; seqs_fasta`; # conteúdo em $conteudo# conteúdo em $conteudoprint “print “$conteudo$conteudo”; ”; # exibe o conteúdo# exibe o conteúdo
Script Perl
Algoritmos / ScriptsAlgoritmos / Scripts
Início e Fim da seqüência de alta qualidade
1 - Abrir o arquivo phd.1 desejado.1 - Abrir o arquivo phd.1 desejado.2 – Localizar a informação TRIM2 – Localizar a informação TRIM3 – Mostrar os valores de TRIM3 – Mostrar os valores de TRIM
Algoritmo
Algoritmos / ScriptsAlgoritmos / Scripts
Início e Fim da seqüência de alta qualidade
TRIM: 36 446TRIM: 36 446
Início
Fim
Algoritmos / ScriptsAlgoritmos / Scripts
$trim$trim = ` = `grepgrep TRIM TF00604.phd.1`; TRIM TF00604.phd.1`;
Script Perl
Início e Fim da seqüência de alta qualidade
TRIM: 36 446TRIM: 36 446
Algoritmos / ScriptsAlgoritmos / Scripts
@pos_trim@pos_trim = split(/\s+/, = split(/\s+/,$trim$trim); );
Script Perl
Início e Fim da seqüência de alta qualidade
@pos_trim = (“TRIM”,”36”,”446”)@pos_trim = (“TRIM”,”36”,”446”)
Algoritmos / ScriptsAlgoritmos / Scripts
print “Início = print “Início = $pos_trim[1]$pos_trim[1] ”; ”; print “Fim = print “Fim = $pos_trim[2]$pos_trim[2] ”; ”;
Script Perl
Início e Fim da seqüência de alta qualidade
Início = 36Início = 36Fim = 446Fim = 446
Algoritmos / ScriptsAlgoritmos / Scripts
$trim$trim = ` = `grepgrep TRIM TF00604.phd.1`; TRIM TF00604.phd.1`; @pos_trim@pos_trim = split(/\s+/, = split(/\s+/,$trim$trim); );
print “Início = print “Início = $pos_trim[1]$pos_trim[1] ”; ”; print “Fim = print “Fim = $pos_trim[2]$pos_trim[2] ”; ”;
Script Perl
Início e Fim da seqüência de alta qualidade
Algoritmos / ScriptsAlgoritmos / Scripts
Vetores encontrados
1 – Ler o arquivo screen.out.1 – Ler o arquivo screen.out.2 – Localizar os vetores encontrados.2 – Localizar os vetores encontrados.3 – Separar início e fim de cada vetor.3 – Separar início e fim de cada vetor.4 – Exibir vetores e suas posições.4 – Exibir vetores e suas posições.
Algoritmo
35 5.88 7.35 0.00 TF00604-M04R.ab1 1 68 (569) pCR4-TOPO_Cloning_Vector 222 294 (3663)
90 0.00 0.00 0.00 TF00604-M04R.ab1 69 158 (479) pCMVSPORT 691 780 (3616) 248 2.94
Algoritmos / ScriptsAlgoritmos / Scripts
Vetores encontrados
Script-Perl: Selecionando vetores.
@vetor = `grep TF00604-M04R screen.out`;
Algoritmos / ScriptsAlgoritmos / Scripts
Vetores encontrados
$ln = 0;foreach $conteudo ( @vector ) # 1 { if ( $conteudo =~ /^\s+/ ) # 2 { $conteudo_linha[$ln] = $conteudo; # 3 $ln++; # 4 } }
Script-Perl: Separando linhas.
Algoritmos / ScriptsAlgoritmos / Scripts
Vetores encontrados
$ln = 0;foreach $conteudo ( @vector ) # 1 { if ( $conteudo =~ /^\s+/ ) # 2 { $conteudo_linha[$ln] = $conteudo; # 3 $ln++; # 4 } }
Script-Perl: Separando linhas.
Algoritmos / ScriptsAlgoritmos / Scripts
Vetores encontrados
$ln = 0;foreach $conteudo ( @vector ) # 1 { if ( $conteudo =~ /^\s+/ ) # 2 { $conteudo_linha[$ln] = $conteudo; # 3 $ln++; # 4 } }
Script-Perl: Separando linhas.
Algoritmos / ScriptsAlgoritmos / Scripts
Vetores encontrados
@partes = split(/\s+/, $conteudo_linha[$i]);
# conteúdo de partes@partes = (“ ”,“35”,”5.88”,”7.35”,”0.00”,”TF00604-M04R.ab1”,”1”, “68 “,...);
Script-Perl: Imprimindo os vetores e suas posições.
Algoritmos / ScriptsAlgoritmos / Scripts
Vetores encontrados
$inicio_vetor[$i] = $partes[6]; $fim_vetor[$i] = $partes[7];
# inicio e fim
Script-Perl: Imprimindo os vetores e suas posições.
Algoritmos / ScriptsAlgoritmos / Scripts
Vetores encontrados
print "$i - Início = $inicio_vetor[$i] <br>"; print "$i - Fim = $fim_vetor[$i] <br>";
# imprime
Script-Perl: Saída
Algoritmos / ScriptsAlgoritmos / Scripts
Vetores encontrados
for( $i=0; $i < $ln; $i++ ) { @partes = split(/\s+/, $conteudo_linha[$i]);
$inicio_vetor[$i] = $partes[6]; $fim_vetor[$i] = $partes[7];
print "$i - Início = $inicio_vetor[$i] <br>"; print "$i - Fim = $fim_vetor[$i] <br>"; }
Script-Perl: Imprimindo os vetores e suas posições.
ExemploExemplo
ExemploExemplo
ExemploExemplo
Perguntas?Perguntas?
[email protected]@odin.unaerp.br