simulador de bioinformática
|
|
Título del Test:
![]() simulador de bioinformática Descripción: simulador de bioinformática |



| Comentarios |
|---|
NO HAY REGISTROS |
|
¿Qué imprime? cadena = " Hola, Mundo! " print(cadena.strip()). " Hola, Mundo! ". "Hola,". "Hola, Mundo!". "HOLA, MUNDO!". ¿Qué muestra? frase = "Programación en Python" print(frase[0:7]). Program. Python. Progra. Programación. ¿Qué imprime el siguiente código? contador = 1 while contador <= 5: print(contador) contador += 1. 1, 2, 3, 4. 1, 2, 3, 4, 5. 0 a 5. Error. frutas = ["manzana", "banana", "cereza"] frutas[1] = "naranja" frutas.append("uva") print(frutas). ["manzana", "naranja", "cereza", "uva"]. ["manzana", "cereza"]. ["manzana", "banana", "cereza", "uva"]. ["banana", "naranja", "uva"]. ¿Qué imprimirá el siguiente código? for numero in range(1, 6): if numero == 3: continue print(numero). 1, 2, 3, 4, 5. 1, 2, 4, 5. 1, 2, 5. 2, 4. ¿Cuál es la salida? cadena = "Python" cadena_invertida = cadena[::-1] print(cadena_invertida). Error. nohtyP. python. Pyth. ¿Cuál será la salida? edad = 20 if edad < 18: print("Menor de edad") elif edad == 18: print("Acabas de cumplir 18") else: print("Mayor de edad"). Acabas de cumplir 18. Error en la condición. Mayor de edad. Menor de edad. ¿Qué imprimirá el siguiente código? for numero in range(1, 6): if numero == 3: continue print(numero) *. 1, 2, 3, 4, 5. 1, 2, 4, 5. 1, 2, 5. 2, 4. ¿Cuál es el valor impreso de `azul`? colores = ("rojo", "verde", "gris") rojo, verde, azul = colores print(azul) *. azul. None. verde. gris. Un algoritmo calcula el contenido GC en una cadena genética. ¿Qué hace la expresión 'if letra in "GC":' dentro del bucle?. Reemplaza letras por “GC”. Ordena las bases. Convierte a mayúsculas. Verifica si la letra pertenece a la cadena "GC". En un archivo FASTA, se desea contar líneas, palabras y caracteres: def contar(archivo): with open(archivo, 'r') as f: data = f.read() return len(data), len(data.split()), data.count('\n')+1 ¿Cuál función de Python permite abrir el archivo correctamente?. file(). read(). input(). open(). En bioinformática, verificar un palíndromo genético ayuda a detectar sitios de restricción. ¿Qué imprimirá este código? def es_palindromo(seq): seq = seq.lower().replace(" ", "") return seq == seq[::-1] print(es_palindromo("ATCGCTA")). Error. Ninguno. False. True. En análisis de secuencias, el siguiente código invierte una cadena de ADN: seq = "ATGCGA" print(seq[::-1]) ¿Qué devuelve el programa?. AGCATG. ATGCGA. AGCGTA. GACTGA. El siguiente código elimina las bases “A” de una secuencia de ADN: def eliminar_A(seq): return ''.join(base for base in seq if base != 'A') print(eliminar_A("AATCGAT")) ¿Qué muestra el programa?. TGCT. TCGT. TCGA. ATCGAT. Un investigador desea contar el número de bases “A” y “T” en una secuencia de ADN. def contar_bases_AT(secuencia): bases = 'AT' contador = 0 for base in secuencia: if base in bases: contador += 1 return contador print(contar_bases_AT("ATGCGTTAAC")) ¿Cuál es la salida del programa?. 4. 7. 6. 5. Para limpiar secuencias con espacios: def limpiar_secuencia(seq): return ''.join(seq.split()) print(limpiar_secuencia("A T G C G A")) Resultado esperado: A TGCGA. Error. ATGCGA. A T G C G A. Dado el código: def contar_vocales_consonantes(seq): bases = 'aeiouAEIOU' v = c = 0 for letra in seq: if letra.isalpha(): if letra in bases: v += 1 else: c += 1 return v, c print(contar_vocales_consonantes("AUGC")) ¿Cuál será la salida?. (0,4). (1,3). (3,1). (2,2). Para evaluar una cadena genética en bioinformática: def analizar(seq): return seq.lower() == seq[::-1] print(analizar("AGCTCGA")) El resultado indica: No es palíndromo. Es palíndromo. Error. Siempre True. Para evaluar similitudes genómicas, se invierte la cadena complementaria. ¿Qué indica el operador [::-1]?. Ordena las bases. Convierte a mayúsculas. Elimina espacios. Invierte el orden de la secuencia. ¿Qué imprime este código al analizar una secuencia con minúsculas? cadena = "atgc" print(cadena.upper()). ATGC. Error. atgc. Atgc. En la edición de texto genético, ¿qué hace replace("A", "T")?*. Sustituye todas las T por A. Elimina letras. Sustituye todas las A por T. Duplica la secuencia. En la comparación de secuencias genéticas, el operador in se usa para: Reemplazar caracteres. Verificar ausencia de un carácter en una cadena. Verificar pertenencia de un carácter en una cadena. Calcular longitud. En el procesamiento de secuencias, ¿qué realiza este bloque? for base in secuencia: if base.isalpha(): print(base). Cuenta bases G y C. Convierte a mayúsculas. Imprime solo las letras de la secuencia. Imprime solo números. Efecto de usar cmap='coolwarm' en un heatmap *. Aplica colores fríos y cálidos para distinguir niveles bajos y altos. Normaliza los valores antes de graficar. Aumenta el contraste de la figura. Convierte el gráfico en escala de grises. ¿Qué hace annot=True en el heatmap? import seaborn as sns, pandas as pd, numpy as np data = np.random.rand(5,4) df = pd.DataFrame(data, columns=['Muestra1','Muestra2','Muestra3','Muestra4']) sns.heatmap(df, cmap='viridis', annot=True) plt.title('Heatmap de Expresión Génica') plt.show(). Cambia el esquema de color. Muestra los valores dentro de cada celda. Ajusta el tamaño del gráfico. Elimina los valores numéricos del mapa. Ventaja de integrar conceptos de BioConductor en Python *. Evitar usar matrices y dataframes. Graficación reproducible y manejo biológico con bibliotecas abiertas. Reducir la necesidad de datos experimentales. Ejecutar código R dentro de Python directamente. ¿Qué hace loc=8 en np.random.normal? expresion = np.random.normal(loc=8, scale=2, size=5). Establece el rango mínimo de datos. Representa la media de la distribución normal. Limita los valores a enteros. Define la desviación estándar. Librería para gráficos interactivos en Python. seaborn. Bio.SeqUtils. matplotlib. plotly.express. ¿Qué muestra este gráfico de barras agrupadas con Plotly? import plotly.express as px, pandas as pd df = pd.DataFrame({'Gene':['GEN1','GEN2','GEN3'], 'Sano':[5,8,6], 'Tumoral':[10,12,9]}) df_melted = df.melt(id_vars='Gene', var_name='Condición', value_name='Expresión') fig = px.bar(df_melted, x='Gene', y='Expresión', color='Condición', barmode='group') fig.show(). Frecuencia de mutaciones por gen. Niveles de variabilidad por gen. Contenido GC por secuencia. Comparación de expresión entre condiciones. ¿Qué calcula gc_fraction(seq)? from Bio.Seq import Seq import Bio.SeqUtils secuencias = [Seq('ATGCGCGTA'), Seq('GCGTATGCGA'), Seq('ATATATATGCGC')] gc_values = [Bio.SeqUtils.gc_fraction(seq)*100 for seq in secuencias]. La longitud de la secuencia. La frecuencia de A y T. El porcentaje de G y C. La proporción de codones. ¿Qué representa el eje Y? import matplotlib.pyplot as plt import numpy as np genes = ['GEN1','GEN2','GEN3','GEN4','GEN5'] expresion = np.random.normal(loc=8, scale=2, size=5) plt.bar(genes, expresion, color='skyblue') plt.title('Expresión Génica Simulada') plt.show(). La variación entre condiciones. El nivel de expresión génica. El número total de genes. El tipo de muestra analizada. ¿Qué representa la línea central en un boxplot? import seaborn as sns, pandas as pd, numpy as np genes = ['GENA','GENB','GENC'] expresiones = np.random.normal(loc=[8,10,12], scale=[1,1.5,2], size=(20,3)) df = pd.DataFrame(expresiones, columns=genes) sns.boxplot(data=df, palette='Set2'); plt.title('Boxplot de Niveles de Expresión'). El valor máximo de expresión. La mediana del conjunto de datos. El valor mínimo observado. La media aritmética. Interpretación de colores intensos en una fila de un heatmap. Que la expresión del gen varía mucho entre condiciones. Que existe un error en los datos. Que las muestras son idénticas. Que el gen no expresa en ninguna condición. ```python from io import StringIO from Bio import SeqIO multi = ">A\nATGCTAGC\n>B\nGCGTAGCTAG\n" for rec in SeqIO.parse(StringIO(multi), "fasta"): print(rec.id, len(rec.seq)) ``` ¿Qué imprime el programa?. Solo el número total de registros. Las bases G y C de cada registro. Los IDs y las secuencias completas en una sola línea. Los identificadores y las longitudes de cada secuencia. Observa el cálculo: ```python seq = "ATGCGTACCTGATCGTAGCTAGCTAGGCTAGC" gc = (seq.count("G") + seq.count("C")) / len(seq) * 100 print(f"Contenido GC: {gc:.2f}%") ``` ¿Qué mide esta operación?. La proporción de bases nitrogenadas sin normalizar. La cantidad total de codones. El contenido de guanina y citosina sobre la longitud total. El porcentaje de adeninas y timinas. Dada la siguiente secuencia de ADN: ```python dna = "ATGCGTACCTGATCGTAGC" print(len(dna)) ``` ¿Qué imprime el programa y qué representa ese número? *. 20, número de genes. 21, número de tripletes. 20, número de nucleótidos. 19, número de aminoácidos. ```python for nombre, sec in secuencias.items(): gc = (sec.count("G") + sec.count("C")) / len(sec) * 100 if gc > 50: print(f"{nombre} ✅ GC alto ({gc:.1f}%)") ``` Si gc es 60.3, ¿qué se imprimirá. nombre ✅ GC alto (60.3%). GC fuera de rango. nombre GC medio (60.3%). nombre ❌ GC bajo (60.3%). Dado: ```python seq_rna = seq_dna.replace("T", "U") ``` ¿A qué proceso biológico equivale? *. Alineamiento. Traducción. Replicación. Transcripción. ```python gene1 = "ATGCGTACCTGATCGTAGCTAG" gene2 = "ATGCGTACCTGATCGTAGC" if len(gene1) > len(gene2): print("Gene1 es más largo") ``` ¿Qué mostrará en pantalla?. Gene1 es más largo. Error de sintaxis. Ambos genes son iguales. Gene1 es más corto. ```python dna = "CCCATGAAACCC..." start = dna.find("ATG") ``` Si el codón de inicio está en la posición 3 (base 0), ¿qué valor devuelve start?. 3. -1. 6. 0. ```python complemento = dna.translate(str.maketrans({"A":"T","T":"A","C":"G","G":"C"})) complemento_inverso = complemento[::-1] ``` ¿Qué operación se realiza?. Cálculo del %GC. Reversión de tripletes sin cambio. Obtención del complemento inverso del ADN. Generación del ARN mensajero. ```python from collections import Counter dna = "ATGCGTACCTGATCGTAGC" k = 3 kmers = [dna[i:i+k] for i in range(len(dna)-k+1)] conteo = Counter(kmers) print(len(conteo)) ``` ¿Qué devuelve len(conteo)?. El número de trímeros únicos en la secuencia. El total de combinaciones posibles de trímeros. La frecuencia del codón ATG. El número de bases totales. ```python def pasa_filtro(r): return (r["longitud"] >= 20) && (40.0 <= r["%GC"] && r["%GC"] <= 60.0) ``` ¿Qué hace la función?. Cuenta codones de parada. Calcula el complemento inverso. Valida que solo contenga A, C, G y T. Filtra secuencias por criterios biológicos de longitud y %GC. En el contexto de MEME Suite, ¿qué opción del comando permite indicar que se analizará una sola ocurrencia del motivo por secuencia?. -mod oops. -mod anr. -mod multi. -mod zoops. En la siguiente línea de código: motif = motifs.read(open("MA0447.1.sites"), "sites") ¿Qué realiza esta instrucción?. Carga un conjunto de motivos desde un archivo tipo “sites”. Busca coincidencias de un motivo en una secuencia. Crea una secuencia desde cero. Convierte una secuencia en un patrón degenerado. Para incluir los ejecutables de MEME en el entorno del usuario en Ubuntu, ¿qué instrucción debe añadirse al archivo .profile?. export MEME_PATH=/usr/bin/meme. sudo addpath meme. export PATH=$PATH:$HOME/meme/bin. export PATH=$HOME/meme/bin:$HOME/meme/libexec/meme-5.5.5:$PATH. En el siguiente fragmento de código: from Bio import SeqUtils pattern = "ACG" sequence = "ATGCGCGACGGCGTGATCAGCTTATAGCCGTACGACTGCTGCAACGTGAC TGAT" result = SeqUtils.nt_search(sequence, pattern) print(result) ¿Qué representa el segundo elemento de la lista impresa por print(result)?. La posición donde inicia la primera coincidencia del patrón. La cantidad total de motivos encontrados. El número de caracteres degenerados en el patrón. La longitud de la secuencia analizada. Si se desea buscar el complemento inverso del patrón ACG dentro de una secuencia, ¿qué instrucción se debe emplear?. SeqUtils.nt_search(pattern). pattern[::-1]. pattern.reverse_complement(). pattern.complement(. En la función SeqUtils.nt_search(), ¿cuál es la ventaja de usar caracteres degenerados como R o Y en el patrón de búsqueda?. Permitir coincidencias parciales en secuencias con variabilidad genética. Reducir el tiempo de ejecución del algoritmo. Aumentar la precisión reduciendo coincidencias falsas. Limitar la búsqueda solo a secuencias proteicas. ¿Qué tipo de secuencias permiten el uso de caracteres como N, Y, R o W en la búsqueda de motivos?. matrix.txt. motif.xml. binding.json. sites.fasta. En el código: from Bio import motifs from Bio.Seq import Seq instances = [Seq("CAGTT"), Seq("CATTT"), Seq("ATTAG"), Seq("CAGTA")] motif = motifs.create(instances) print(motif.degenerate_consensus) ¿Qué significa la salida CAKTW?. Un motivo sin variación. Un consenso con caracteres degenerados. Un patrón aleatorio sin valor biológico. Un alineamiento erróneo de secuencias. ¿Cuál de las siguientes funciones permite crear un motivo a partir de una colección de secuencias alineadas en Biopython?. amotifs.build(). motifs.construct(). motifs.generate(). motifs.create(). Para obtener ayuda sobre un comando específico en Linux, ¿qué comando podrías utilizar?. info. help. Todas las anteriores. Man. Para obtener una lista de todas las opciones y argumentos disponibles para un comando específico, ¿qué comando usarías?. man. ls. rmdir. pwd. ¿Qué diferencia existe entre ls y ls -l en la terminal de Ubuntu?. a. ls muestra solo archivos y ls -l solo directorios. b. ls muestra los archivos y directorios en formato corto y ls -l muestra detalles adicionales. c. Ambos comandos son equivalentes. d. ls muestra archivos ocultos y ls -l muestra solo archivos visibles. ¿Cuál de los siguientes comandos es necesario para ejecutar cualquier comando con privilegios administrativos en Ubuntu?. a. exit. b. man. c. sudo. d. mkdir. Si deseas eliminar un directorio que no está vacío, ¿qué comando usarías en lugar de rmdir?. a. cp. b. mv. c. rm -r. d. touch. ¿Qué comando se usa para ver el historial de comandos ejecutados en la terminal de Ubuntu?. a. pwd. b. history. c. man. d. sudo. ¿Qué comando utilizarías para mostrar la ruta completa del directorio actual?. a. man. b. cd. c. pwd. d. ls -l. ¿Qué comando se utiliza para apagar el sistema desde la terminal?. a. halt. b. shutdown. c. Todas las anteriores. d. poweroff. Pregunta sobre comando rm -rf: ¿Qué ocurre cuando se ejecuta el comando rm -rf / en Linux?. a. Se elimina el directorio / si está vacío. b. Se muestra el contenido del directorio raíz. c. Se eliminan todos los archivos en el directorio raíz de forma irreversible. d. No tiene ningún efecto. ¿Cuál de los siguientes comandos es usado para obtener información detallada sobre un comando en Linux?. a. man. b. cd. c. pwd. d. ls. Pregunta sobre alineamiento con brechas: ¿Cuál sería una estrategia adecuada si el alineamiento obtenido presenta muchas brechas inesperadas?. a. Cambiar de formato de salida. b. Aceptarlo tal como está. c. Usar el alineamiento en programas filogenéticos directamente. d. Refinar el alineamiento cambiando parámetros o usando otro software. Al observar una región con muchos símbolos "." y ":", el estudiante debería pensar que... a. Las secuencias están mal anotadas. b. Existen similitudes químicas entre las bases o aminoácidos. c. Todas las secuencias son iguales. d. El alineamiento es inválido. ¿Cuál es el propósito principal de una alineación múltiple?. a. Revisar solo la secuencia más larga. b. Identificar una única mutación. c. Comparar estructuras tridimensionales. d. Estudiar relaciones evolutivas entre múltiples secuencias. Si un estudiante observa muchos símbolos "*" en el alineamiento, ¿qué interpretación correcta puede realizar?. a. Las secuencias tienen regiones completamente diferentes. b. Las secuencias comparten bases idénticas en esa posición. c. Hay muchas mutaciones. d. Los símbolos indican errores de codificación. ¿Qué parte del procedimiento de alineación te permite verificar si hay errores en el resultado?. a. Paso 1. a. Paso 1. c. Paso 3. d. Paso 2. ¿Qué tipo de alineación usarías si quisieras analizar genes dentro de secuencias muy largas?. a. Aleatoria. b. Local. c. Global. d. Múltiple. ¿Cuál sería la consecuencia de utilizar un archivo en formato incorrecto para realizar una alineación en MAFFT?. a. El resultado será más preciso. b. No se podrá realizar la alineación. c. Se alinearán solo los encabezados. d. Se eliminarán automáticamente los errores. Si se desea utilizar un archivo alineado en IQ-TREE o programas de análisis filogenético, ¿qué formato sería más conveniente?. a. CLUSTAL. b. Stockholm. c. MSF. d. FASTA. Un alumno quiere ver visualmente las regiones conservadas de su alineamiento. ¿Qué formato de salida debería usar?. a. FASTA. b. Stockholm. c. CLUSTAL. d. PHYLIP. ¿Qué reflexión metacognitiva deberías hacer antes de usar un alineamiento en otro software?. a. Verificar si el formato de salida es compatible con el nuevo programa. b. Revisar que no haya letras repetidas. c. Convertirlo a imagen para mayor comprensión. d. Asegurarte de que el archivo tenga extensión .pdf. |





