{"id":2639,"date":"2025-11-20T23:31:00","date_gmt":"2025-11-20T21:31:00","guid":{"rendered":"https:\/\/bioinfo2.ugr.es\/biocomputacion\/?page_id=2639"},"modified":"2025-11-20T23:31:00","modified_gmt":"2025-11-20T21:31:00","slug":"practica-3-2025","status":"publish","type":"page","link":"https:\/\/alu.ugr.es\/bioinfo\/biocomputacion\/practica-3-2025\/","title":{"rendered":"Pr\u00e1ctica 3 &#8211; 2025"},"content":{"rendered":"<h3 data-start=\"542\" data-end=\"553\">Objetivo<\/h3>\n<p>En esta pr\u00e1ctica vamos a analizar datos de secuenciaci\u00f3n masiva de RNAs peque\u00f1os (miRNA-seq).<\/p>\n<p>Usaremos este experimento: \u00a0<a href=\"https:\/\/trace.ncbi.nlm.nih.gov\/Traces\/?view=study&amp;acc=SRP544098\">SRP544098<\/a> del repositorio p\u00fablico SRA. De este experimento se asigna al menos una muestra a cada estudiante.<\/p>\n<table style=\"height: 239px\" width=\"198\">\n<tbody>\n<tr>\n<td style=\"text-align: center\" width=\"20\">ID<\/td>\n<td style=\"text-align: center\" width=\"20\">SRX<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">1<\/td>\n<td style=\"text-align: center\">SRR31290390<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">2<\/td>\n<td style=\"text-align: center\">SRR33614430<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">3<\/td>\n<td style=\"text-align: center\">SRR31290385<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">6<\/td>\n<td style=\"text-align: center\">SRR33614429<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">8<\/td>\n<td style=\"text-align: center\">SRR31290381<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">11<\/td>\n<td style=\"text-align: center\">SRR33614414<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">12<\/td>\n<td style=\"text-align: center\">SRR33614415<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>A. Referencias de miRNAs<\/h3>\n<p data-start=\"2459\" data-end=\"2643\">Para el an\u00e1lisis de miRNA-seq necesitamos una base de datos curada con las secuencias y anotaciones de miRNAs.<br data-start=\"2569\" data-end=\"2572\" \/>La referencia est\u00e1ndar es <a href=\"http:\/\/mirbase.org\/\"><strong data-start=\"2598\" data-end=\"2609\">miRBase<\/strong><\/a>, que contiene para cada microRNA:<\/p>\n<ul data-start=\"2644\" data-end=\"2818\">\n<li data-start=\"2644\" data-end=\"2688\">\n<p data-start=\"2646\" data-end=\"2688\">su secuencia madura (miRNA-5p y miRNA-3p),<\/p>\n<\/li>\n<li data-start=\"2689\" data-end=\"2716\">\n<p data-start=\"2691\" data-end=\"2716\">su precursor (\u201chairpin\u201d),<\/p>\n<\/li>\n<li data-start=\"2717\" data-end=\"2744\">\n<p data-start=\"2719\" data-end=\"2744\">su localizaci\u00f3n gen\u00f3mica,<\/p>\n<\/li>\n<li data-start=\"2745\" data-end=\"2777\">\n<p data-start=\"2747\" data-end=\"2777\">la especie a la que pertenece,<\/p>\n<\/li>\n<li data-start=\"2778\" data-end=\"2818\">\n<p data-start=\"2780\" data-end=\"2818\">informaci\u00f3n funcional y bibliogr\u00e1fica.<\/p>\n<\/li>\n<\/ul>\n<h3><strong>B. Repositorios p\u00fablicos<\/strong><\/h3>\n<p data-start=\"1979\" data-end=\"2303\">Los repositorios como <a href=\"https:\/\/www.ncbi.nlm.nih.gov\/sra\"><strong data-start=\"2001\" data-end=\"2008\">SRA<\/strong><\/a> (Sequence Read Archive) y <a href=\"https:\/\/www.ncbi.nlm.nih.gov\/gds\/\"><strong data-start=\"2035\" data-end=\"2042\">GEO<\/strong><\/a> (Gene Expression Omnibus) contienen miles de datasets generados por laboratorios de todo el mundo. Su utilidad es enorme: permiten validar hip\u00f3tesis, reutilizar datos, y aprender metodolog\u00edas reproducibles sin necesidad de realizar experimentos de laboratorio.<\/p>\n<h3 data-start=\"2889\" data-end=\"2925\"><strong data-start=\"2891\" data-end=\"2925\">1. Descarga de datos desde SRA<\/strong><\/h3>\n<p data-start=\"2927\" data-end=\"3006\">Para descargar los archivos FASTQ desde el SRA utilizaremos el toolkit oficial:<\/p>\n<div class=\"contain-inline-size rounded-2xl relative bg-token-sidebar-surface-primary\">\n<div class=\"overflow-y-auto p-4\" dir=\"ltr\"><code class=\"whitespace-pre! language-bash\">fastq-dump --gzip SRR31290390<\/code><\/div>\n<\/div>\n<h3>2. Eliminar el adaptador<\/h3>\n<p>Existen muchos protocolos para la preparaci\u00f3n de la librer\u00eda cDNA, y en cada uno se usa un adaptador diferente. Parte de los adaptadores se secuencian (si la mol\u00e9cula es m\u00e1s corta que el n\u00famero de ciclos) y por ello tenemos que detectar primero estas secuencias y eliminarlas de las lecturas.<\/p>\n<p>Entre los mas usados se encuentran:<\/p>\n<ul>\n<li>TGGAATTCTCGGGTGCCAAGG<\/li>\n<li>TCGTATGCCGTCTTCTGCTTG<\/li>\n<li>AGATCGGAAG<\/li>\n<\/ul>\n<p><code class=\"whitespace-pre! language-bash\">sRNAbench input=\/home\/cris\/tema7\/SRR31290390.fastq.gz output=\/home\/cris\/tema7\/mirna\/SRR31290390 adapter=AGATCGGAAGAGCACACGT remove3pBases=5 removeBarcode=5<\/code><\/p>\n<h4>\u00bfEn qu\u00e9 nos fijamos?<\/h4>\n<ul>\n<li>En la carpeta de salida tenemos el fichero <em>results.txt, donde podemos ver <\/em>el porcentaje de lecturas para las que se detect\u00f3 el adaptdor<\/li>\n<li>El fichero reads_orig.fa: Contiene los reads a los que se les ha quitado el adaptador<\/li>\n<\/ul>\n<h3 data-start=\"5191\" data-end=\"5238\"><strong data-start=\"5193\" data-end=\"5238\">3. Cuantificaci\u00f3n de miRNAs con sRNAbench<\/strong><\/h3>\n<p data-start=\"5240\" data-end=\"5299\">sRNAbench es una herramienta espec\u00edfica para miRNA-seq que:<\/p>\n<ul data-start=\"5300\" data-end=\"5473\">\n<li data-start=\"5300\" data-end=\"5324\">\n<p data-start=\"5302\" data-end=\"5324\">detecta adaptadores,<\/p>\n<\/li>\n<li data-start=\"5325\" data-end=\"5356\">\n<p data-start=\"5327\" data-end=\"5356\">colapsa lecturas id\u00e9nticas,<\/p>\n<\/li>\n<li data-start=\"5357\" data-end=\"5407\">\n<p data-start=\"5359\" data-end=\"5407\">mapea contra precursores y secuencias maduras,<\/p>\n<\/li>\n<li data-start=\"5408\" data-end=\"5433\">\n<p data-start=\"5410\" data-end=\"5433\">cuantifica expresi\u00f3n,<\/p>\n<\/li>\n<li data-start=\"5434\" data-end=\"5473\">\n<p data-start=\"5436\" data-end=\"5473\">analiza isomiRs y diversas variantes.<\/p>\n<\/li>\n<\/ul>\n<p data-start=\"5475\" data-end=\"5483\">Ejemplo:<\/p>\n<div class=\"contain-inline-size rounded-2xl relative bg-token-sidebar-surface-primary\">\n<div class=\"overflow-y-auto p-4\" dir=\"ltr\"><code class=\"whitespace-pre! language-bash\">sRNAbench input=\/home\/cris\/tema7\/SRR31290390.fastq.gz output=\/home\/cris\/tema7\/mirna\/SRR31290390 adapter=AGATCGGAAGAGCACACGT remove3pBases=5 removeBarcode=5 microRNA=hsa<\/code><\/div>\n<\/div>\n<p>microRNA=hsa indica que se usen los microRNAs de humanos; mmu seria para el rat\u00f3n o rno para la rata, bta para la vaca (Bos Taurus) etc.<\/p>\n<h4><strong>\u00bfEn qu\u00e9 nos fijamos?<\/strong><\/h4>\n<ul>\n<li>Porcentaje de lecturas mapeadas a miRNAs. Cuanto mayor es, mejor.<\/li>\n<li>Proporci\u00f3n de lecturas que alinean frente a otros RNAs (tRNA, rRNA, snoRNA,&#8230;), muy \u00fatil para detectar contaminaci\u00f3n.<\/li>\n<li>Distribuci\u00f3n de isomiRs -&gt; Modificaciones de los miRNAs.<strong data-start=\"5676\" data-end=\"5702\"><code data-start=\"5678\" data-end=\"5700\"><\/code><\/strong><\/li>\n<\/ul>\n<h4>Archivos importantes:<\/h4>\n<ul>\n<li>El fichero mature_sense.grouped<\/li>\n<li>la carpeta hairpin<\/li>\n<\/ul>\n<h3>4. Calcular la expresi\u00f3n diferencial<\/h3>\n<p>SRR31290390:SRR31290385:SRR31290381<\/p>\n<p>SRR33614430:SRR33614429:SRR33614414:SRR33614415<\/p>\n<p><code class=\"whitespace-pre! language-bash\">sRNAde input=\/home\/cris\/tema7\/mirna output=\/home\/cris\/tema7\/results\/matrix grpString=SRR31290390:SRR31290385:SRR31290381#SRR33614430:SRR33614429:SRR33614414:SRR33614415 grpDesc=disease#healthy diffExpr=true<\/code><\/p>\n<h4><a href=\"https:\/\/docs.google.com\/document\/d\/1Jpq4ZQKed08syGloYohRsN2cub4yjTKh7wZZ1lKDVIo\/edit?usp=sharing\" target=\"_blank\" rel=\"noopener\">fichero para generar el string de grupos<\/a><\/h4>\n<h4>\u00bfEn que nos fijamos?<\/h4>\n<ul>\n<li>La matrix de expresi\u00f3n: mature_sense_minExpr1_RCadj_libraryRPM.mat<\/li>\n<\/ul>\n<h3>5. Normalizar el conteo<\/h3>\n<p>Antes de comparar perfiles de expresi\u00f3n entre muestras, es imprescindible normalizar los datos. La normalizaci\u00f3n corrige diferencias en profundidad de secuenciaci\u00f3n y en composici\u00f3n global entre bibliotecas.<\/p>\n<p data-start=\"452\" data-end=\"494\">M\u00e9todos comunes de normalizaci\u00f3n incluyen:<\/p>\n<ul data-start=\"496\" data-end=\"737\">\n<li data-start=\"496\" data-end=\"575\">\n<p data-start=\"498\" data-end=\"575\"><strong data-start=\"498\" data-end=\"525\">RPM (Reads Per Million)<\/strong>: ajusta por el n\u00famero total de lecturas mapeadas.<\/p>\n<\/li>\n<li data-start=\"576\" data-end=\"664\">\n<p data-start=\"578\" data-end=\"664\"><strong data-start=\"578\" data-end=\"612\">TMM (Trimmed Mean of M-values)<\/strong>: corrige diferencias de composici\u00f3n entre muestras.<\/p>\n<\/li>\n<li data-start=\"665\" data-end=\"737\">\n<p data-start=\"667\" data-end=\"737\"><strong data-start=\"667\" data-end=\"690\">DESeq2 size factors<\/strong>: ajusta la distribuci\u00f3n global de los conteos.<\/p>\n<\/li>\n<\/ul>\n<p data-start=\"739\" data-end=\"830\">En sRNAde ya se generan matrices normalizadas, pero es importante entender el razonamiento:<\/p>\n<p data-start=\"832\" data-end=\"973\"><strong data-start=\"832\" data-end=\"864\">Objetivo de la normalizaci\u00f3n<\/strong><br data-start=\"864\" data-end=\"867\" \/>Garantizar que una diferencia observada en expresi\u00f3n refleja cambios biol\u00f3gicos y no variaciones t\u00e9cnicas.<\/p>\n<h3>6. An\u00e1lisis exploratorio: heatmap<\/h3>\n<p data-start=\"1022\" data-end=\"1135\">El an\u00e1lisis exploratorio permite evaluar la calidad de las muestras antes de proceder con an\u00e1lisis m\u00e1s avanzados.<\/p>\n<p data-start=\"1137\" data-end=\"1203\">Un <strong data-start=\"1140\" data-end=\"1183\">heatmap de las expresiones normalizadas<\/strong> permite visualizar:<\/p>\n<ul data-start=\"1205\" data-end=\"1391\">\n<li data-start=\"1205\" data-end=\"1252\">\n<p data-start=\"1207\" data-end=\"1252\">similitud global entre perfiles de expresi\u00f3n,<\/p>\n<\/li>\n<li data-start=\"1253\" data-end=\"1309\">\n<p data-start=\"1255\" data-end=\"1309\">agrupamientos (cl\u00fasteres) esperados entre condiciones,<\/p>\n<\/li>\n<li data-start=\"1310\" data-end=\"1391\">\n<p data-start=\"1312\" data-end=\"1391\">posibles <strong data-start=\"1321\" data-end=\"1333\">outliers<\/strong>, como muestras contaminadas o procesadas incorrectamente.<\/p>\n<\/li>\n<\/ul>\n<p data-start=\"1393\" data-end=\"1422\">Tambi\u00e9n se suelen visualizar:<\/p>\n<ul data-start=\"1424\" data-end=\"1538\">\n<li data-start=\"1424\" data-end=\"1481\">\n<p data-start=\"1426\" data-end=\"1481\"><strong data-start=\"1426\" data-end=\"1448\">diagramas PCA\/UMAP<\/strong> para ver agrupamientos globales,<\/p>\n<\/li>\n<li data-start=\"1482\" data-end=\"1538\">\n<p data-start=\"1484\" data-end=\"1538\"><strong data-start=\"1484\" data-end=\"1516\">correlaciones entre muestras<\/strong> (Pearson o Spearman).<\/p>\n<\/li>\n<\/ul>\n<p data-start=\"1484\" data-end=\"1538\"><strong data-start=\"1540\" data-end=\"1579\">\u00bfQu\u00e9 debemos evaluar en el heatmap?<\/strong><\/p>\n<ul data-start=\"1581\" data-end=\"1779\">\n<li data-start=\"1581\" data-end=\"1633\">\n<p data-start=\"1583\" data-end=\"1633\">Que las muestras del mismo grupo formen cl\u00fasteres.<\/p>\n<\/li>\n<li data-start=\"1634\" data-end=\"1706\">\n<p data-start=\"1636\" data-end=\"1706\">Que no existan muestras aisladas con patrones completamente distintos.<\/p>\n<\/li>\n<\/ul>\n<h3>7. Determinar la expresi\u00f3n diferencial<\/h3>\n<p>Para determinar la expresi\u00f3n diferencial\u00a0tenemos que:<\/p>\n<ul>\n<li>normalizar el conteo para poder comparar diferentes muestras<\/li>\n<li>calcular la magnitud de cambio (fold-change) para cada microRNA como: log2 (media de expresi\u00f3n (casos) \/ media de expresi\u00f3n (controles)<\/li>\n<li>calcular la significaci\u00f3n estad\u00edstica para el FC mediante un test de student<\/li>\n<li>corregir el valor p (<em>multiple testing<\/em>, comparaciones m\u00faltiples)\n<ul>\n<li><\/li>\n<\/ul>\n<\/li>\n<li>extraer los microRNAs que se sobre-expresan y los que se infra-expresan<\/li>\n<\/ul>\n<p data-start=\"1831\" data-end=\"1933\">Una vez validada la calidad, podemos identificar qu\u00e9 microRNAs cambian su expresi\u00f3n entre condiciones.<\/p>\n<p data-start=\"1831\" data-end=\"1933\">Para determinar la expresi\u00f3n diferencial tenemos que:<\/p>\n<ol>\n<li style=\"list-style-type: none\">\n<ol data-start=\"1963\" data-end=\"2889\">\n<li data-start=\"1963\" data-end=\"2031\">\n<p data-start=\"1966\" data-end=\"2031\">Normalizar los conteos (RPM \/ TMM \/ DESeq2 size factors)<\/p>\n<\/li>\n<li data-start=\"2033\" data-end=\"2210\">\n<p data-start=\"2036\" data-end=\"2093\">Calcular el cambio de expresi\u00f3n:<\/p>\n<p style=\"padding-left: 80px\" data-start=\"2036\" data-end=\"2093\">Para cada miRNA: log2 (media de expresi\u00f3n (casos) \/ media de expresi\u00f3n (controles)<\/p>\n<\/li>\n<li data-start=\"2033\" data-end=\"2210\">\n<p data-start=\"2036\" data-end=\"2093\">Evaluar la significaci\u00f3n estad\u00edstica:<\/p>\n<ol data-start=\"1963\" data-end=\"2889\">\n<li data-start=\"2033\" data-end=\"2210\">\n<p data-start=\"2036\" data-end=\"2093\">Test de Student (en sRNAde)<\/p>\n<\/li>\n<li data-start=\"2033\" data-end=\"2210\">\n<p data-start=\"2036\" data-end=\"2093\">Alternativas comunes: Wald test (DESeq2), LRT, Wilcoxon.<\/p>\n<\/li>\n<\/ol>\n<\/li>\n<li data-start=\"2033\" data-end=\"2210\">Corregir el valor p (multiple testing, comparaciones multiples):\n<ul data-start=\"1963\" data-end=\"2889\">\n<li data-start=\"2033\" data-end=\"2210\">https:\/\/en.wikipedia.org\/wiki\/False_discovery_rate#Benjamini.E2.80.93Hochberg_procedure<\/li>\n<li data-start=\"2033\" data-end=\"2210\">https:\/\/en.wikipedia.org\/wiki\/Bonferroni_correction<\/li>\n<\/ul>\n<\/li>\n<li data-start=\"2033\" data-end=\"2210\">Seleccionar los miRNA diferencialmente expresados:\n<ul data-start=\"1963\" data-end=\"2889\">\n<li>Sobre-expresados: log2FC &gt; 0 y FDR significativo<\/li>\n<li>Infra-expresados: log2FC &lt; 0 y FDR significativo<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<ol>\n<li style=\"list-style-type: none\"><\/li>\n<\/ol>\n<p data-start=\"2891\" data-end=\"2911\"><strong data-start=\"2891\" data-end=\"2909\">Archivos clave<\/strong><\/p>\n<ul data-start=\"2912\" data-end=\"2994\">\n<li data-start=\"2912\" data-end=\"2994\">\n<p data-start=\"2914\" data-end=\"2994\"><code data-start=\"2914\" data-end=\"2958\">mature_sense_minExpr1_RCadj_libraryRPM.mat<\/code> \u2192 matriz normalizada para an\u00e1lisis.<\/p>\n<\/li>\n<\/ul>\n<h3>8. Explorar los microRNAs mediante <a href=\"https:\/\/dianalab.e-ce.uth.gr\/tarbasev9\" target=\"_blank\" rel=\"noopener\">TarBase<\/a><\/h3>\n<h3>9. Analizar los microRNAs mediante <a href=\"https:\/\/dianalab.e-ce.uth.gr\/html\/mirpathv3\/index.php?r=mirpath\" target=\"_blank\" rel=\"noopener noreferrer\">miRPath<\/a><\/h3>\n<p><a href=\"http:\/\/62.217.122.229:3838\/app\/miRPathv4\">miRPath_v4<\/a><\/p>\n<p><a href=\"https:\/\/ccb-compute.cs.uni-saarland.de\/mirtargetlink2\/\">mirTarget<\/a><\/p>\n<p>miRPath permite detectar las rutas\u00a0<a href=\"http:\/\/www.genome.jp\/kegg\/\" target=\"_blank\" rel=\"noopener noreferrer\">KEGG<\/a>\u00a0que contienen mas genes regulados por ciertos microRNAs que se esperar\u00eda por azar<\/p>\n<p><a href=\"http:\/\/www.genome.jp\/kegg-bin\/show_pathway?map=hsa05200&amp;show_description=show\" target=\"_blank\" rel=\"noopener noreferrer\">Rutas en el c\u00e1ncer\u00a0<\/a>\u00a0\u2013&gt;\u00a0<a href=\"http:\/\/www.genome.jp\/dbget-bin\/www_bget?pathway+hsa05200\" target=\"_blank\" rel=\"noopener noreferrer\">pathway entry<\/a>:\u00a0 532 genes<\/p>\n<p><a href=\"http:\/\/www.genome.jp\/dbget-bin\/www_bget?gn:T01001\" target=\"_blank\" rel=\"noopener noreferrer\">Homo sapiens en KEGG<\/a>:\u00a0 \u00a0 \u00a020364 genes codificantes (19178 genes no codificantes)<\/p>\n<p>Pregunta: \u00bfCu\u00e1l es la probabilidad de obtener 20 genes codificantes que act\u00faan en \u2018Rutas del c\u00e1ncer\u2019 en una lista aleatoria de genes con tama\u00f1o 200?<\/p>\n<h3>Cuestiones:<\/h3>\n<ul>\n<li>\u00bfQue muestra habr\u00eda que eliminar del an\u00e1lisis y por que?<\/li>\n<li>\u00bfCuantos microRNAs se expresan diferencialmente entre individuos sanos y individuos con c\u00e1ncer?<\/li>\n<li>\u00bfQue microRNAs podr\u00edan estar causalmente implicados en la formaci\u00f3n del tumor?<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Objetivo En esta pr\u00e1ctica vamos a analizar datos de secuenciaci\u00f3n masiva de RNAs peque\u00f1os (miRNA-seq). Usaremos este experimento: \u00a0SRP544098 del repositorio p\u00fablico SRA. De este experimento se asigna al menos una muestra a cada estudiante. ID SRX 1 SRR31290390 2 <a href=\"https:\/\/alu.ugr.es\/bioinfo\/biocomputacion\/practica-3-2025\/\" class=\"read-more\">Read More &#8230;<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-2639","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/alu.ugr.es\/bioinfo\/biocomputacion\/wp-json\/wp\/v2\/pages\/2639","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/alu.ugr.es\/bioinfo\/biocomputacion\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/alu.ugr.es\/bioinfo\/biocomputacion\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/alu.ugr.es\/bioinfo\/biocomputacion\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/alu.ugr.es\/bioinfo\/biocomputacion\/wp-json\/wp\/v2\/comments?post=2639"}],"version-history":[{"count":0,"href":"https:\/\/alu.ugr.es\/bioinfo\/biocomputacion\/wp-json\/wp\/v2\/pages\/2639\/revisions"}],"wp:attachment":[{"href":"https:\/\/alu.ugr.es\/bioinfo\/biocomputacion\/wp-json\/wp\/v2\/media?parent=2639"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}