Input & Output

Apresentação

aula07.pdf

Arquivo: sequencias.fasta

Exemplos

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# exemplo01 pokemon.pl
#!usr/bin/perl

%evolution = ("Bulbasaur",  "Ivysaur",            
              "Charmander", "Charmeleon", 
              "Squirtle",   "Wartortle",
              "Pikachu",    "Raichu");

$pokemon = "Pikachu";

# usando for


# usando while


# usando foreach


# sem usar loops


exit;

========

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# exemplo02

#!/usr/bin/perl

($E, $P, $M) = @ARGV;

$nota_final = ((2*$E)+(3*$P)+(5*$M))/10;

if ($nota_final >= 5) {
   print "Nota: $nota_final, Aluno aprovado.\n";
} else {
   print "Nota: $nota_final, Aluno reprovado.\n";
}

exit; 

========

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#exemplo03 

#!usr/bin/perl

$output1 = $ARGV[0];
$output2 = $ARGV[1];

open(OUTPUT1, ">$output1");
open(OUTPUT2, ">>$output2");

print OUTPUT1 "Escrevendo no arquivo 1\n";
print OUTPUT2 "Escrevendo no arquivo 2\n";

close OUTPUT1; 
close OUTPUT2; 

exit;

========

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#exemplo04

#!usr/bin/perl

$output = $ARGV[0];
open(OUTPUT, ">$output");
print OUTPUT "Escrevendo no arquivo usando OUTPUT\n";

print "Onde estou escrevendo sem filehandle?\n";
print STDERR "Onde estou escrevendo com STDERR?\n";
print STDOUT "Onde estou escrevendo com STDOUT?\n";

close OUTPUT; 
exit;

========

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#exemplo05

#!usr/bin/perl

$input  = $ARGV[0];
$output = $ARGV[1];

open(SEQ, "<$input")  || die "Nao foi possivel abrir o arquivo $input\n";
open(OUT, ">$output") || die "Nao foi possivel abrir o arquivo $output\n";

while (<SEQ>) {
   print OUT $_; 
}

close SEQ;

exit;

========

Exercício

Exercício para entrega via e-mail. O exercício deverá ser entregue com um script completo, em um arquivo .pl, com o nome NomeSobrenomeE06.pl (substituir NomeSobrenome pelo próprio nome, por exemplo, TatianaTorresE06.pl).
Prazo: 28/09/2018

Exercício com loops e in/out:
1.Crie UM script que utilize um arquivo de sequências em formato FASTA. Ele deverá:
a)ler sequências (e qualidades) no formato FASTA e armazenar em dois hashes: %seq e %qual;
b)calcular o tamanho médio das sequências e retornar no output padrão.
c)converter sequências e qualidades no formato FASTA (amazenadas nos hashs %seq e %qual) para formato FASTQ em um novo arquivo de saída. Usar a conversão Phred+33 (S - Sanger) na tabela apresentada no link do wikipedia.

ENTRADA: arquivoSequencias.fasta e arquivoQualidades.fasta
SAIDA: arquivoSequenciasComSitio.fastq

Testem antes de enviar!

Arquivo de sequencias: Chom-tr.fasta
Arquivo de qualidades: Chom-tr.fasta.qual