## Curso Análisis de datos de secuenciación masiva en genómica de poblaciones
Cuatrimestre: Juio - Agosto 2023 - CICESE
Dra. Paulina Mejía Ruíz
____
Otro análisis común para evaluar estructura genética poblacional es el realizado en STRUCTURE [(Pitchard *et al*., 2000)](https://typeset.io/pdf/detecting-the-number-of-clusters-of-individuals-using-the-16mlx2qlv8.pdf).
Este programa utiliza un enfoque bayesiano para delinear grupos de individuos en función de sus genotipos en múltiples loci. Se calcula la probailidad de pertenecia de cada individuo a un grupo específico (*K*).
#### Los programas como structure son estocásticos y tienden a producir resultados diferentes entre corridas. Por esta razon se suelen realizar varias ejecuciones para el mismo modelo y parámetros y se utiliza un rango de valores de K cada uno con múltiples ejecuciones independientes.
## A) Corriendo Structure
1. Conviertes un vcf en un archivo de entrada para estructure usando PGDSpider (**NO meter el popmap, se debe correr con los individuos acomodados por localidades**)
* el archivo de entrada debe verse algo así:

* los genotipos de los individuos están acomodados en dos filas y cada loci está en columnas.
2. Abres structure

--> New project

* estableces nombre del proyecto, seleccionas directorio de salida de los resultados y selecciones archivo de entrada:

* Debes proporcionar el número de individuos, número de marcadores y valor de datos faltantes:

* Indicas si tu archivo de entrada tiene la primera fila para el nombre de los loci:

* Indicas que tu archivo tiene ID para cada individuo y que tiene información de localiades de origen:

--> Finish
3. Agregas un nuevo set de parámetros
* Run Length
Length of Burnin Period: 10,000
Number of MCMC Reps after Burnin: 5,000
* Ancestry Model
Admixture
LOCPRIOR
* Advanced
Print Q-hat
4. Run Parameter Set

5. Corres structure
Project --> Start a job:

* seleccionas el número de localidades que tienes (tus posibles grupos o *K*)
* defines el número de iteraciones por *K*
**--> START**
### Dejas correr (tarda un par de horas)
La salida de Structure o programas parecidos a structure deben de ser analizados para definir el número de *K* más probables.
Generalmente se utilizaba [Structure Harvester](http://taylor0.biology.ucla.edu/structureHarvester/) (pero actualmente está caída la página).
## B) [CLUMPAK](http://clumpak.tau.ac.il/help.html)
Como alternativa se puede utilizar Clumpak (Clustering Markov Packager Across K).
Los archivos de entrada de CLUMPAK son las matrices Q obtenidas por STRUCTURE las cuales contienen para cada individuo los coeficientes de pertenencia a cada uno de los *K* clusters (prob. de pertenencia).
Además, tiene funciones adicionales para comparar modelos y seleccionar el valor más probable de *K* utilizando el método de Evanno *et al*. (2005).
También puedes meter los nombres de las localidades y los colores que les asignará a los grupos o poblaciones.
## El programa ofrece 4 modos de correr los análisis y se puede correr desde tu computadora con Phyton o en línea (en este curso usaremos el *Main Pipeline* en línea)
el pipeline principal tiene como objetivo ayudar al usuario a través de todo el proceso de sumar y presentar los resultados obtenidos por STRUCTURE.
1. Comprimes los archivos de salida de structure _f (carpeta Results):

Los subes en la primera opción de Structure/Admixture
3. Creas un archivo de texto con las etiquetas de las poblaciones (labels.txt) y lo subes en la opción de DISTRUCT
4. Creas un archivo con los colores (colors.txt) (ver manual de DISTRUCT para más opciones) y lo subes en el último recuadro en la opción de Graphical.

3. Agregas tu e-mail y corres programa
Los resultados se generan en la misma página y se pueden descargar (también son enviados al correo electrónico).
### Literatura sobre STRUCTURE
https://typeset.io/papers/structure-harvester-a-website-and-program-for-visualizing-s1kuog4kj6