- Realizad la instalación de la versión más reciente de Ubuntu MATE dentro de una máquina virtual de Oracle VirtualBox. Para ello, primero debéis obtener una imagen ISO de Ubuntu MATE. Posteriormente, es necesario crear una máquina virtual vacía, insertar la imagen ISO de Ubuntu y ejecutar la instalación. Podéis emplear un administrador de la gestión de paquetes de software para configurar el sistema final resultante.
- Averiguad las funciones que realiza el comando
fold
del terminal. Analizar las opciones disponibles para este comando. Después, diseñad un pequeño script que combine gawk con el comandofold
para calcular la frecuencia de aparición absoluta y relativa de cada clase de nucleótido en una secuencia genómica almacenada en un fichero de texto guardado en formato FASTA. Evaluad el funcionamiento de vuestro protocolo sobre varias secuencias de ADN. - Averiguad las funciones realizadas por Bioawk. Determinad cuál es el comando origen de esta extensión, los formatos de datos biológicos que soporta y si es posible trabajar con ficheros comprimidos con gzip o con otros comandos compresores.
- Estudiad el comando
sedl
. Para probar su eficacia, grabad una hoja de estilo de MicrosoftExcel en formato texto (seleccionar el tabulador como separador de campos). Una vez en Gnu/Linux, verificad con el comandood
que este formato propietario efectivamente introduce como salto de línea los caracteres\r
y\n
. Finalmente, emplead el comando sed para únicamente mantener el carácter\n
(el terminal trabaja en este formato). - Diseñad un script en el terminal que os permita realizar el análisis completo de una serie de ficheros de la clase
refGene_human.txt
almacenados en un directorio. Cada fichero debe contener en su propio nombre el organismo al que pertenece para evitar nombres de ficheros duplicados (p.e. txt). Para cada genoma podemos realizar las mismas preguntas mostradas en el caso de estudio de los materiales teóricos. - A continuación, suministramos un archivo FASTA y debéis contestar a las siguientes preguntas. El separador entre las dos columnas es el
\t
$ cat hib.fasta
HiB_C1 TGTTTGTTGTCACTGACTGATGTTGTGGTCTGG HiB_C2 TATATATTACTT HiB_C3 TATATATAACTTATA HiB_C4 TATATATAACTTATA HiB_C5 TATATATTACTT
- Imprimid la línea que coincide con el patrón
HiB_C4
. - Imprimid la columna 1, un punto y coma, y la columna 2.
- Usad el concepto de un operador condicional en la declaración de impresión de la forma print CONDITION ? PRINT_IF_TRUE_TEXT : PRINT_IF_FALSE_TEXT para identificar las secuencias con longitudes > 14.
- Intentad realizar el siguiente ejercicio. ¿Qué es lo que ocurre?
Se puede usar e1 después del último bloque {} para imprimir todo (1 es una notación abreviada para {print $0} que se convierte en {print}, ya que, sin ningún argumento, print imprimirá $0 por defecto), y dentro de este bloque, podemos cambiar $0, por ejemplo, para asignar el primer campo a $0 para la segunda línea (NR==2).
- Usad el comando
getline
para cargar el contenido de otro archivo además del que estás leyendo. Intenta, con el bucle while, cargar cada línea del fichero fasta en una variable: la b, por ejemplo.
- Contestad a las siguientes preguntas después de descargar el siguiente fichero: https://ftp.ncbi.nlm.nih.gov/genomes/ASSEMBLY_REPORTS/assembly_summary_refseq.txt
- Los valores únicos de la variable categórica assembly_level se encuentran indicados en la columna #12, la cual muestra el estado del ensamble. ¿Cuáles son?
- Determinad el número de genomas por especie, que se encuentra en la columna #8. Luego, debéis mostrar únicamente las 10 especies con la mayor cantidad de genomas secuenciados.
- ¿Cuántos genomas completos hay del género Mycobacterium?
- Contad los genomas de Salmonella, Pseudomonas y Acinetobacter (por género) y presentad la lista ordenada por número decreciente de genomas.
- Determinad la longitud de una cadena: ¿Por qué estos dos comandos dan diferente información?
$ echo 'atattttGAATTtattGAATCAGGACC' | wc -c
$ echo 'atattttGAATTtattGAATCAGGACC' | awk 'END{print "El oligonucleótido", $0, "tiene" lenght($0), "nucleótidos de longitud"}'
- Eligid varios ficheros que contengan secuencias FASTA.
- El número de secuencias para un fichero (awk, autoincremento).
- Con un bucle determina el número de secuencias para todos los ficheros (for and, awk, autoincremento).