






Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Encuentra los documentos específicos para los exámenes de tu universidad
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
Asignatura: Bioinformática de los cojones, Profesor: Pepo Pepo, Carrera: Microbiologia, Universidad: UAB
Tipo: Apuntes
1 / 11
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!







www.activestate.com/Products/ActivePerl/
Tradueix el codigo fuente a codico maquina que son conjunts de 0 i 1 (codi binari) que el ordinador entén.
Compilar: tradueixen i emmagatzemen un fitxer executables. Amb perl no és així, sino que es tradueix i s’executa, sense cap fitxzer intermedi.
Interpret i programa ( script) Desem en un arxiu (primer.pl) el següent: print "El meu primer programa en Perl"; executar programes anem a la línia de comandes i escrivim:
C:>perl primer.pl
o bé C:>primer.pl Resultat: El meu primer programa en Perl C:> Com funciona un script
print "Puc calcular!\n";
$suma = 3 + 4;
print "La suma de 3 + 4 és ".$suma. "\n";
comencen amb aquest símbol no són interpretades
Tot el que hi ha a la dreta del almohadilla (#)no ho llegeix, són comentaris.
\n equival a intro. Cada frase de perl cal que acabi en punt i coma, sino no ho llegeix i dóna error
\t equival a tabulador o espai
TIPUS DE DADES Text (o cadena de caràcters, string ) "cadena número 1" 'cadena número 2' Números 1, 49, 28.2, -109, 6.04E
Script: programa molt senzill
Quan escribim cal que trobem la ruta on està el programa
Podem concatenar variables. "Concatenació dels dos fragments de DNA: \n \n";cal que ho posem tot dins de les cometes.
ARIMÈTICA
=~: inici de cerca de patrons s: operador substituir T: patró a substituir U: text que reemplaçarà el patró g: modificador (en aquest cas, global)
$DNA = "ACGAGTGACTCATCTACA"; $LEN = length $DNA; print $LEN;
$base1=‘A’; $base2=‘C’; $base3=‘G’; $base4=‘T’; # Aquesta és una mala solució
@bases = (‘A’,‘C’,‘G’,‘T’); # Solució més idònea
@old_bases = @bases; # Copiar la matriu sencera
· operacions amb matrius
@bases = (‘A’,‘C’,‘G’,‘T’);
$tercera_base = $bases[2];
$num_elementosA = @bases; $num_elementosB = $#bases;
@bases_invertida = reverse(@bases);
@bases_ordenadas = sort(@bases_invertida);
$# és per dir que et digui quantes lletres hi ha, des del 0 al 3.
Per imprimir hem de posar: print “@bases”;
· funcions amb matrius
@bases = (‘A’,‘C’,‘G’,‘T’);
$ultima_base = pop(@bases);
push(@bases,‘T’); push(@bases,$ultima_base);
$primera = shift(@bases);
unshift(@bases,$primera);
@ ens indica que es tracta d’una matriu
open (FITXER1, “dades.txt”); @array = ; #guardem el contingut en una matriu close (FITXER1); · escriptura en fitxers
open (FITXER, ‘>data.txt’); # Crear per escriure open (FITXER, ‘>>data.txt’); # o afegir al final $DNA = ‘TCAGTGCCAGTTA’; print FITXER “nova cadena de DNA: $DNA\n”; close (FITXER);
A. Crea un programa para que almacene la secuencia de DNA que hay a continuación en una variable, y la escriba en la pantalla.
Secuencia de DNA: ACGGGAGGACGGGAAAATTACTACGGCATTAGC
print "A guargar seqüència 1.\n"; print "ACGGGAGGACGGGAAAATTACTACGGCATTAGC.\n\n";
A guargar seqüència 1. ACGGGAGGACGGGAAAATTACTACGGCATTAGC.
B. Guarda las dos secuencias de DNA siguientes en dos variables escalares y escríbelas en la pantalla. A continuación, crea una tercera variable que contenga las dos primeras concatenadas. Escribe también el resultado.
Primera secuencia de DNA: ACGGGAGGACGGGAAAATTACTACGGCATTAGC
Segunda secuencia de DNA: ATAGTGCCGTGAGAGTGATGTAGTA
$DNA1="ACGGGAGGACGGGAAAATTACTACGGCATTAGC"; $DNA2="ATAGTGCCGTGAGAGTGATGTAGTA"; print "B guardar seqüències.\n"; print $DNA1."\n"; print $DNA2."\n\n";
B guardar seqüències. ACGGGAGGACGGGAAAATTACTACGGCATTAGC ATAGTGCCGTGAGAGTGATGTAGTA
C. La transcripción es el paso de DNA a RNA, donde todas las timinas (T) de la secuencia cambian a uridinas (U). En este apartado debes escribir un programa para transcribir secuencias de DNA. Introduce la siguiente secuencia de DNA en el programa en forma de variable escalar, y cambia todas sus T's por U's. Finalmente, como siempre, escribe el resultado para comprobar que el programa hace lo esperado.
Secuencia de DNA: ACGGGAGGACGGGAAAATTACTACGGCATTAGC $DNAtranscript1=$DNA1; $DNAtranscript2=$DNA2; $DNAtranscript1=~s/T/U/g; $DNAtranscript2=~s/T/U/g; print "C transcripció.\n"; print $DNAtranscript1."\n"; print $DNAtranscript2."\n\n";
C transcripció. ACGGGAGGACGGGAAAAUUACUACGGCAUUAGC AUAGUGCCGUGAGAGUGAUGUAGUA D. El DNA es una hélice formada por dos cadenas, una complementaria de la otra, que avanzan en sentidos opuestos: 5' ACTCAGA 3' F 0 E 0 F 0 D F 3' TGAGTCT 5'
En la cadena complementaria, las sustituciones de nucleótidos son las siguientes:
A F 0 E 0 T T F 0 E 0 A C F 0 E 0 G G F 0 E 0 C
La dirección en la que siempre de deben dar las secuencias (por consenso) es 5' F 0 E 03'. Escribe un programa que, dada una secuencia de DNA, calcule su complementaria (y reversa). Secuencia de DNA: ACGGGAGGACGGGAAAATTACTACGGCATTAGC $DNArev1 = reverse $DNA1; $DNArev2 = reverse $DNA2; $DNAcomp1=$DNA1; $DNAcomp2=$DNA2; $DNAcomp1 =~ tr/ACGT/TGCA/; $DNAcomp2 =~ tr/ACGT/TGCA/; print "D inversa i complementària.\n"; print $DNArev1."\n"; print $DNArev2."\n\n"; print $DNAcomp1."\n"; print $DNAcomp2."\n\n";
D inversa i complementària. CGATTACGGCATCATTAAAAGGGCAGGAGGGCA ATGATGTAGTGAGAGTGCCGTGATA TGCCCTCCTGCCCTTTTAATGATGCCGTAATCG TATCACGGCACTCTCACTACATCAT
Agregar Eliminar Al principio de la matriz
unshift shift
Al final de la matriz push pop
Realiza las siguientes operaciones sobre la matriz inicial:
splice(@bases,2,0,X); print "@bases\n\n"; E. trata de insertar un elemento nuevo (la letra X) entre el segundo y el tercer elemento de la matriz original T C X G A F. Transformación de un tipo de variable a otro: abre este fichero que contiene una secuencia y guarda la secuencia en una variable escalar. Imprime por pantalla la secuencia junto con su longitud. A continuación, transforma la secuencia en una matriz donde cada nucleótido sea un elemento de la matriz. Imprime los 4 primeros nucleótidos de la secuencia. NOTA: este ejercicio debe ejecutarse de forma local ya que en el programa indicaremos la ruta del fichero en nuestro ordenador.
Hem descarregat el fitxer i l’hem guardat a H:/
Llavors hem oberrt un bloc de notas nou I en blanc en el que hi hem posat:
#!/usr/bin/perl
open(fitxer,'secuencia.txt');
@array=;
print"@array";
un cop fet això, es guarda en el mateix H:/
un cop tenim els blocs de notas guardats, fem iniciaexecutacmd
se’ns obre el comando i allà veiem que ja hi ha h:/> és en aquí on hem de posar perl (espai) nom del programa i apretem intro.
Si volem fer modificacions en la sequencia que ens hem guardat el que hem de fer és obrir el bloc de notas (guardat com programa.pl) i fer les modificacions que vulguis fer tal i com les fariem en el “prova el codi”, llavors si tornes a guardar i tornes a obrir el comandament (iniciaexecutacmd) i tornes a posar perl (espai) nom del programa i apretem intro t’apareixerà la sequencia modificada.