Sistema de evaluaci on de variantes gen eticas · Tabla 1.1: Tabla de codones. 64 codones codi can...
-
Upload
duongkhanh -
Category
Documents
-
view
216 -
download
0
Transcript of Sistema de evaluaci on de variantes gen eticas · Tabla 1.1: Tabla de codones. 64 codones codi can...
UNIVERSIDAD DE LAS PALMAS DE GRAN CANARIA
Master Oficial en Sistemas Inteligentes y Aplicaciones Numericas en Ingenierıa
Trabajo Final de Master
Sistema de evaluacion de variantes geneticas
Pascual Lorente Arencibia
Tutores
Jose Juan Hernandez Cabrera
Antonio Tugores Cester
11 de enero de 2016
Agradecimentos
Quiero agradecer a los tutores Antonio Tugores Cester y Jose Juan Hernandez
Cabrera su ayuda en todo el proceso de este Trabajo.
Gracias a los profesores del master. Me han ensenado algo mas que el con-
tenido de los proyectos docentes.
Gracias a los companeros de la UICHUMI y del Master SIANI. El trabajo
siempre se hacer mejor en companıa.
Gracias a mi familia por darme un respiro lejos del trabajo.
Gracias a Naira, por aguantarme y apoyarme incondicionalmente.
Resumen
Las variantes geneticas individuales pueden determinar la presencia de en-
fermedades geneticas de etiologıa desconocida y su conocimiento puede ayudar
a hacer un diagnostico precoz e incluso mejorar el tratamiento.
La secuenciacion masiva de exoma (NGS), permite conocer un gran numero
de variantes por paciente como aproximacion sin hipotesis.
Para establecer una relacion entre una variante y una patologıa hay que
evaluar las caracterısticas de cada variante y las interacciones que hay entre los
genes relacionados con ambas.
En este trabajo presentamos un programa informatico que evalua cada va-
riante y otorga una puntuacion a cada gen afectado segun sus interacciones y su
distancia al fenotipo seleccionado para facilitar la tarea de seleccion de variantes
candidatas.
Indice general
1. Introduccion 1
1.1. Motivacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.3. Estructura del ADN . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.4. Variantes geneticas . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.5. Tecnologıas de secuenciacion . . . . . . . . . . . . . . . . . . . . 5
1.6. Funciones de los genes . . . . . . . . . . . . . . . . . . . . . . . . 7
1.7. Software actual . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.7.1. Phenotype Based Gene Analyzer . . . . . . . . . . . . . . 8
1.7.2. Search Tool for the Retrieval of Interacting Genes/Proteins 9
1.7.3. Sorting Intolerant From Tolerant . . . . . . . . . . . . . . 10
1.7.4. Polymorphism Phenotyping . . . . . . . . . . . . . . . . . 10
1.7.5. Variant Effect Predictor . . . . . . . . . . . . . . . . . . . 11
2. Estado del arte 12
2.1. Big Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
VI
Pascual Lorente Arencibia INDICE GENERAL
2.2. Business Intelligence . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.3. Inteligencia Artificial . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.4. Interfaz de usuario . . . . . . . . . . . . . . . . . . . . . . . . . . 16
3. Desarrollo 19
3.1. Justificacion del proyecto . . . . . . . . . . . . . . . . . . . . . . 19
3.2. Recursos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.3. Data warehouse . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.3.1. HUGO Gene Nomenclature Comitee . . . . . . . . . . . . 21
3.3.2. Online Mendelian Inheritance in Man . . . . . . . . . . . 22
3.3.3. Human Protein Reference Database . . . . . . . . . . . . 22
3.3.4. Biological General Repository for Interaction Datasets . . 23
3.3.5. Mentha . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.3.6. The Human Protein Atlas . . . . . . . . . . . . . . . . . . 23
3.4. Evaluacion de variantes . . . . . . . . . . . . . . . . . . . . . . . 23
3.5. Entrada de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.6. Interfaz de usuario . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.6.1. Pantalla de fenotipos . . . . . . . . . . . . . . . . . . . . . 27
3.6.2. Pantalla de genes . . . . . . . . . . . . . . . . . . . . . . . 27
4. Resultados 29
5. Conclusiones 32
5.1. Trabajo futuro . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
SIANI — ULPGC VII
Pascual Lorente Arencibia INDICE GENERAL
A. Obtencion de variantes 34
B. Variant Call Format 37
C. Estructura de Poirot 39
D. Consecuencias 41
E. Interacciones 44
SIANI — ULPGC VIII
Indice de figuras
1.1. Estructura quımica del ADN . . . . . . . . . . . . . . . . . . . . 3
1.2. Secuenciacion usando el metodo de Sanger . . . . . . . . . . . . . 6
1.3. Diagrama de red de Phenolyzer . . . . . . . . . . . . . . . . . . . 9
1.4. Afinidad fısica de los aminoacidos . . . . . . . . . . . . . . . . . . 11
2.1. Estructura y tablas de un modelo relacional . . . . . . . . . . . . 13
2.2. Sistema experto para diagnostico . . . . . . . . . . . . . . . . . . 17
3.1. Estructura del data warehouse . . . . . . . . . . . . . . . . . . . 22
3.2. Grafo de interacciones de Poirot . . . . . . . . . . . . . . . . . . 24
3.3. Pantalla de fenotipos . . . . . . . . . . . . . . . . . . . . . . . . . 28
3.4. Pantalla de genes . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
4.1. Interacciones de los genes mas implicados en la hipercolesterolemia 31
C.1. Diagrama de clases . . . . . . . . . . . . . . . . . . . . . . . . . . 40
D.1. Posicion de cada variante segun su consecuencia . . . . . . . . . . 41
IX
Indice de tablas
1.1. Tabla de codones . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2. Codigos de los aminoacidos . . . . . . . . . . . . . . . . . . . . . 4
2.1. Base de datos en formato tabular . . . . . . . . . . . . . . . . . . 14
3.1. Registros por base de datos . . . . . . . . . . . . . . . . . . . . . 21
3.2. Valor de cada consecuencia . . . . . . . . . . . . . . . . . . . . . 25
3.3. Valor de cada interaccion . . . . . . . . . . . . . . . . . . . . . . 26
4.1. Enfermedades de mayor valor . . . . . . . . . . . . . . . . . . . . 30
4.2. Genes implicados en la hipercolesterolemia familiar . . . . . . . . 30
B.1. Columnas del formato VCF. . . . . . . . . . . . . . . . . . . . . . 38
B.2. Ejemplo de fichero VCF. . . . . . . . . . . . . . . . . . . . . . . . 38
X
Capıtulo 1
Introduccion
1.1. Motivacion
El ADN es uno de los descubrimientos mas importantes del siglo 20[1]. Esta
molecula es la encargada de determinar la estructura de los seres vivos y dirigir
los procesos naturales que en ellos se realizan.
De entre los multiples usos que tiene conocer la secuencia genetica de un ser
humano, destacamos tres que estan implicados en la medicina:
1. Diagnosticar enfermedades antes de que se manifiesten sus sıntomas, pu-
diendo retrasar sus aparicion y reducir sus efectos.
2. Mejorar y personalizar los tratamientos: conocer y tratar el origen de una
enfermedad es mejor que tratar los sıntomas.
3. Conocer la respuesta de una persona ante ciertos medicamentos, ya que
la forma en que una persona tolera o rechaza un medicamento esta deter-
minada por su configuracion genetica.
Este Trabajo Final de Master es parte de un proyecto mayor que se desarrolla
en la Unidad de Investigacion del Complejo Hospitalario Universitario Insular -
Materno Infantil (UICHUIMI). Este proyecto quiere mejorar el diagnostico de
enfermedades geneticas utilizando la secuenciacion de exoma de nueva genera-
cion para lograr determinar la relacion entre variantes y patologıas. Hasta ahora,
las herramientas desarrolladas en la UICHUIMI permiten alinear las secuencias
1
Pascual Lorente Arencibia CAPITULO 1. INTRODUCCION
de ADN, localizar las variantes geneticas, etiquetarlas y filtrarlas en base a la
informacion conocida.
1.2. Objetivos
La UICHUIMI plantea la creacion de un software que analice un listado de
variantes geneticas y determine cuales son mas relevantes para una determinada
patologıa o fenotipo en funcion de las interacciones entre los genes asociados a
las variantes.
Los objetivos principales del software son:
1. Mostrar un ranking de genes puntuados de 0 a 1 segun su relevancia con
una o varias patologıas y expresiones seleccionadas.
2. Mostrar los genes relacionados y las interacciones entre un gen con al
menos una variante y la patologıa o expresion escogidos.
1.3. Estructura del ADN
El genoma humano es una cadena de doble helice de mas de 3 mil millones
de nucleotidos, moleculas organicas unidas a traves de un enlace de fosfodiester.
Cada nucleotido se diferencia de los demas por su base nitrogenada, que puede
ser Adenina, Guanina, Citosina o Timina. Las dos helices son complementarias
y estan unidas por las bases nitrogenadas: la Adenina se une a la Timina y la
Guanina a la Citosina.
Cada ser humano tiene dos cadenas de ADN, una heredada del padre y otra
de la madre. Estas cadenas se dividen en 23 cromosomas cada una. 22 de estos
cromosomas son identicos en forma y longitud, pero no en contenido, mientras
que el ultimo es igual en las mujeres (XX) pero no en los hombres (XY).
Los genes son las regiones del ADN que se traducen en proteınas. En total,
se han descubierto entre 22.000 y 25.000 en el ADN humano, que representan
un 2 % del total de su longitud. El conjunto de las regiones donde se localizan
los genes es conocido como el exoma.
SIANI — ULPGC 2
Pascual Lorente Arencibia CAPITULO 1. INTRODUCCION
Estructura
de soporte
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O_
O_
O_
O_
O_
O
_O
NH2
OH
OH
NH
H2N
HN
NH2
H2N
HN
H2N
NH
NH2
extremo 3'
extremo 5'
extremo 3'
extremo 5'
Figura 1.1: Estructura quımica del ADN. Imagen de Miguelsierra via Wikimedia
Commons.
Las proteınas son generadas en el interior de las celulas a traves de un proceso
conocido como sıntesis de proteınas[2]. Este proceso tiene dos fases:
1. Fase de activacion: El gen es copiado en el nucleo de la celula. La copia
la realiza el ARN polimerasa y va en un ARN mensajero. El ADN no se
encuentra nunca fuera del nucleo.
2. Fase de traduccion: El ARN mensajero llega al ribosoma, que traduce
cada triplete de bases nitrogenadas –codon– en un aminoacido en base a la
tabla 1.1, empezando por un codon de inicio y terminando en un codon de
parada. Los aminoacidos forman una cadena tridimensional dando lugar
a una proteına.
Las proteınas cumplen diversas tareas en el organismo: estructuran y prote-
gen el cuerpo –colageno, anticuerpos–, regulan y catalizan sus procesos –insulina,
enzimas– o transportan las sustancias de un extremo al otro –hemoglobina–. To-
das estas caracterısticas son conocidas como el fenotipo.
SIANI — ULPGC 3
Pascual Lorente Arencibia CAPITULO 1. INTRODUCCION
Codon aminoacido
TTT F TCT S TAT Y TGT C
TTC F TCC S TAC Y TGC C
TTA L TCA S TAA stop TGA stop
TTG L TCG S TAG stop TGG W
CTT L CCT P CAT H CGT R
CTC L CCC P CAC H CGC R
CTA L CCA P CAA Q CGA R
CTG L CCG P CAG Q CGG R
ATT I ACT T AAT N AGT S
ATC I ACC T AAC N AGC S
ATA I ACA T AAA K AGA N
ATG M/start ACG T AAG K AGG N
GTT V GCT A GAT D GGT G
GTC V GCC A GAC D GGC G
GTA V GCA A GAA E GGA G
GTG V GCG A GAG W GGG G
Tabla 1.1: Tabla de codones. 64 codones codifican 20 aminoacidos y un codon
de parada. La Metionina funciona tambien como codon de inicio. Los nombres
de los aminoacidos pueden versen en la tabla 1.2.
A Alanina C Cisteına D Acido aspartico
E Acido glutamico F Fenilalanina G Glicina
H Histidina I Isoleucina K Lisina
L Leucina M Metionina N Asparagina
P Prolina Q Glutamina R Arginina
S Serina T Treonina V Valina
W Triptofano Y Tirosina
start Codon de inicio stop Codon de parada
Tabla 1.2: Codigos de los aminoacidos
1.4. Variantes geneticas
El 99,99 % del ADN es igual en todos los seres humanos. El 0.01 % restante
es lo que hace que seamos diferentes. Estas diferencias son conocidas como
variantes y pueden ocurrir en cualquier punto del genoma. Si una variante esta
SIANI — ULPGC 4
Pascual Lorente Arencibia CAPITULO 1. INTRODUCCION
presente en un gen o en sus alrededores, puede producir cambios en la proteına
generada. Cuando el cambio en la proteına tiene efectos negativos sobre el ser
humano –una patologıa– se etiqueta como mutacion y si el efecto es positivo se
denomina ventaja.
Las variantes se clasifican segun su tamano –pequenas si tienen menos de
1000 pares de bases y grandes si tienen mas– y segun su morfologıa[3].
Dentro de las variantes pequenas encontramos:
Single Nucleotide Polymorphism (SNP) Una base es sustituida por otra,
sin alterar el tamano de la cadena. Como un codon es definido por tres
bases, es posible que el nuevo codon siga codificando el mismo aminoacido
–variante sinonima–, o que haya un cambio en la secuencia de una proteına
–no sinonima–.
Insertion/Deletion (Indel) Una o varias bases son insertadas o eliminadas
de un punto concreto de la cadena. Dependiendo de si la InDel es multiplo
de 3, o de la posicion en el gen en que se encuentra, puede modificar
drasticamente la proteına resultante al alterar la pauta de lectura.
Las variantes grandes pueden ser:
Copy Number Variation (CNV) Una alteracion en el numero de veces que
aparece un fragmento en el ADN. Puede no estar ninguna vez, o estar dos
o mas veces consecutivas.
Translocation Un fragmento de un cromosoma se desplaza de posicion, en el
mismo o en otro cromosoma.
Inversion Un fragmento de un cromosoma aparece en la misma posicion, pero
sus bases estan en orden inverso.
1.5. Tecnologıas de secuenciacion
Para encontrar las variantes del genoma de una persona, hay que secuenciar
su material genetico. La secuenciacion es el proceso de lectura de la bases nitro-
genadas de una cadena de ADN o ARN. Hoy en dıa se utilizan dos estrategias:
secuenciar poco con mucha calidad o secuenciar mucho con poca calidad.
Sanger[4] En 1977, este bioquımico desarrollo un metodo que permitıa secuen-
SIANI — ULPGC 5
Pascual Lorente Arencibia CAPITULO 1. INTRODUCCION
ciar unos cientos de pares de bases (300–1000) en una posicion determi-
nada.
Para ello, se sintetizan dos cadenas artificiales de ADN –cebadores– de
unas 17-25 bases de longitud que coinciden con el inicio y el fin del frag-
mento que se desea secuenciar.
Estos cebadores son necesarios para que una polimerasa de ADN copie las
cadenas complementarias y termine, aleatoriamente, en posiciones A,C,T
o G. Ello se consigue al introducir dideoxinucleotidos (ddATP, ddGTP,
ddCTP, ddTTP) que no permiten elongar la cadena mas alla del pun-
to donde se incorporan. Los fragmentos resultantes se separan mediante
electroferesis en acilamida, detectandose mediante un sistema radiactivo
o fluorescente para cada ddNTP.
El resultado es una imagen o grafica donde es posible leer la secuencia.
Figura 1.2: Secuenciacion usando el metodo de Sanger. Imagen de Abizar via
Wikimedia Commons.
Este metodo es ideal para variantes conocidas y es el que se utiliza actual-
mente para el diagnostico clınico de enfermedades geneticas.
Next Generation Sequencing (NGS) No hace referencia a una sola tecno-
logıa, sino a muchas que han surgido a raız de las mejoras en computacion
del siglo XXI[5]. El objetivo de la secuenciacion de nueva generacion es
determinar la secuencia de la mayor parte del genoma o el exoma de un
individuo.
Para ello se fragmenta el ADN en cientos de miles de trozos, shotgun se-
quencing, que son asociados a una serie de adaptadores predefinidos. Estos
SIANI — ULPGC 6
Pascual Lorente Arencibia CAPITULO 1. INTRODUCCION
adaptadores capturan muy bien pequenos fragmentos de ADN de entre 40
y 200 pares de bases. Despues, estos adaptadores, con los fragmentos de
ADN, se escanean por fluorescencia. La maquina muestra como resultado
decenas de millones de secuencias de entre 40 y 200 pares de bases, sin
especificar su posicion en el ADN.
Posteriormente, un ordenador tendra que alinear estas secuencias como si
montara un puzzle. Si se conoce el genoma de la especie, entonces habra
una referencia con la que alinear. Si no se conoce, el ADN se reconstruira
comparando los fragmentos entre sı –secuenciacion de novo.
El alineamiento anade incertidumbres al exoma o genoma secuenciado,
porque una cadena puede estar alineada con dos o mas regiones del ADN,
y porque se permite un cierto grado de libertad para que se alineen las
secuencias que contienen variantes. Ademas, los fragmentos son demasiado
pequenos como para detectar variantes grandes. El proceso computacional
de alineamiento y busqueda de variantes se detalla en el apendice A.
El NGS se esta extendiendo cada vez mas gracias al abaratamiento de los
costes de secuenciacion –un exoma humano cuesta alrededor de $1000– y al
aumento de las prestaciones computacionales. Sin embargo, la secuenciacion
por Sanger sigue siendo necesaria para el diagnostico de enfermedades geneticas
conocidas y la confirmacion de las variantes determinadas por NGS.
La secuenciacion masiva de exoma permite realizar estudios sin hipotesis
previa en la zona cuyo significado biologico conocemos[6, 7]. Esta estrategia
ha sido utilizada con exito en algunas pruebas diagnostico, siendo capaz de
identificar variantes asociadas en, aproximadamente, el 25 % de los pacientes[8,
9, 10, 11].
1.6. Funciones de los genes
El catalogo del genoma esta bastante completo, ya que existen varias estra-
tegias para determinar si una region del ADN es un gen [12]. Una vez se localiza
un gen es posible traducirlo en una cadena de aminoacidos usando la tabla de
codones –tabla 1.1– y ası conocer la secuencia de la proteına.
Para determinar cual es la funcion de una proteına existen dos estrategias:
la genetica y la experimental. La genetica consiste en introducir una mutacion
SIANI — ULPGC 7
Pascual Lorente Arencibia CAPITULO 1. INTRODUCCION
en un organismo modelo y comprobar si revela un cambio en una funcion. La
experimental es similar, pero se realizan en un ensayo in vitro.
Muchas de estas tecnicas han sido descubiertas y desarrolladas gracias al
estudio de la Drosophila melanogaster –mosca de la fruta. Este animal posee 4
pares de cromosomas y muchos de sus genes son homologos a los del ser humano.
Ademas, tiene un ciclo de vida muy corto, de 15 a 21 dıas, y se reproduce con
mucha facilidad[13].
1.7. Software actual
Existen muchos programas que ayudan a establecer la relacion entre variante
y patologıa o entre gen/proteına y funcion. Presentamos algunos de los mas
relevantes.
1.7.1. Phenotype Based Gene Analyzer
Phenotype Based Gene Analyzer (Phenolyzer)[14] es una herramienta que
localiza los genes relacionados con enfermedades o fenotipos basados en palabras
claves.
A Phenolyzer se le pasa un lista de terminos de fenotipos y genera una lista
de genes cada uno con un valor de la posibilidad de estar relacionado con alguno
de los fenotipos.
Su algoritmo es sencillo: a traves de las palabras clave genera una lista de en-
fermedades. Despues localiza los genes asociados a estas enfermedades y entonces
comienza a buscar relaciones gen a gen para hacer crecer el arbol. Finalmente,
integra toda la informacion y genera un valor por cada gen.
En la figura 1.3 se puede ver la red de los genes con mayor relacion con las
enfermedades hypercholesterolemia y obesity.
Phenolyzer utiliza las siguientes fuentes:
Para enfermedades: Medic disease vocabulary[15] de Comparative Toxico-
genomics Database, Disease Ontology[16] de Institute for Genome Sciences
SIANI — ULPGC 8
Pascual Lorente Arencibia CAPITULO 1. INTRODUCCION
Figura 1.3: Diagrama de red de Phenolyzer
y Disease synonyms[17] de Online Mendelian Inheritance in Man.
Para relaciones entre genes y enfermedades: Gene map[17] de Online Men-
delian Inheritance in Man (OMIM), Clinical Variant database (ClinVar)[18]
de National Center for Biotechnology Information (NCBI), GeneReviews[19]
de NCBI, Orphanet[20] y the Genome Wide Association Studies[21].
Para las relaciones gen a gen: Human Protein Relation Database (HPRD)[22],
Biosystem[23] de NCBI, Gene Family[24] de Human Genome Organization
(HUGO) Gene Nomenclature Committee y Human Transcription Interac-
tion (HTRI).
1.7.2. Search Tool for the Retrieval of Interacting Gene-
s/Proteins
Search Tool for the Retrieval of Interacting Genes/Proteins[25] (STRING) es
una base de datos de interacciones entre proteınas, tanto conocidas como predi-
chas. Estas interacciones pueden ser directas –fısicas– o indirectas –funcionales.
SIANI — ULPGC 9
Pascual Lorente Arencibia CAPITULO 1. INTRODUCCION
STRING establece una puntuacion para cada interaccion en funcion de:
Vecindad en el genoma
Fusiones
Coocurrencias en el genoma
Coexpresion
Experimentos
Asociacion en bases de datos
Mencion en artıculos
STRING integra datos de estas fuentes para un gran numero de organis-
mos, y transfiere informacion entre estos organismos cuando puede. En estos
momentos contiene 9.643.763 proteınas de 2031 organismos.
1.7.3. Sorting Intolerant From Tolerant
Sorting Intolerant From Tolerant[26] (SIFT) es un software que predice si un
cambio de aminoacido afecta a la funcion de la proteına basandose en secuencias
homologas –secuencias conservadas en otras especies– y en las propiedades fısico-
quımicas–ver figura 1.4– de los aminoacidos. Estas propiedades determinan si
una sustitucion de una aminoacido por otro es mas o menos drastica en base al
cambio funcional y/o estructural esperado.
SIFT sirve tanto para polimorfismos no sinonimos como para mutaciones
creadas en laboratorio.
1.7.4. Polymorphism Phenotyping
Polymorphism Phenotyping v2[27] (PolyPhen) es una herramienta que pre-
dice el impacto posible de una sustitucion de aminoacido en la estructura y
funcion de una proteına humana usando basandose en evidencias fısicas y com-
parativas. Algunas de sus caracterısticas son:
Alineamiento de secuencias multiples de alta calidad
Clasificador probabilıstico basado en entrenamiento de maquinas
SIANI — ULPGC 10
Pascual Lorente Arencibia CAPITULO 1. INTRODUCCION
Figura 1.4: Afinidad fısica de los aminoacidos. Los globos agrupan las susti-
tuciones en teorıa mas conservativas en base a la estructura de y propiedades
fısico-quımicas de las aminoacidos.
Optimizado para datos NGS
1.7.5. Variant Effect Predictor
Variant Effect Predictor[28] (VEP) es la herramienta de Ensembl para anotar
y predecir el impacto de una variante en un gen, transcrito, secuencia de proteına
o region reguladora. Anade mas de 30 etiquetas a cada variante, incluyendo el
gen y transcrito, consecuencia de la variante, frecuencia en otras poblaciones o
la prediccion SIFT y Polyphen.
SIANI — ULPGC 11
Capıtulo 2
Estado del arte
En el ambito de las Ciencias de la Computacion se han desarrollado en las
ultimas decadas disciplinas y herramientas que resultan muy utiles para el tra-
tamiento de problemas cuya resolucion se basa en manipular grandes volumenes
de datos. A continuacion haremos una breve referencia a aquellos que resultan
utiles para el problema que tratamos en este documento.
2.1. Big Data
Se conoce como Big Data a grandes conjuntos de datos que contiene infor-
macion relevante. Cuando se tienen bases de datos de distintas fuentes, hay que
tener en cuenta ciertos problemas.
En primer lugar, el Sistema de Gestion de Bases de Datos (SGBD). Tra-
dicionalmente los datos se han almacenado utilizando SGBD relacionales, que
organizan los datos en tablas fuertemente definidas. Son sistemas robustos y con
baja tolerancia a errores, ya que no permiten que un mismo dato se almacene en
dos lugares diferentes. Podemos ver un pequeno ejemplo de modelo relacional
en la figura 2.1.
Sin embargo, con la expansion de internet y la aparicion constante de nuevos
datos de distintas fuentes, muchas organizaciones optan por SGBD orientados
a documentos, que almacenan los datos en documentos autodefinidos. Estos
12
Pascual Lorente Arencibia CAPITULO 2. ESTADO DEL ARTE
Estudiantes
Id Nombre
e1 Andres Garcıa
e2 Manuel Gomez
Asignaturas
Id Nombre
a1 Matematicas
a2 Fısica
Estudia
id estudiante id asignatura Nota
e1 a1 B
e2 a1 C
e1 a2 A
e2 a2 B
Figura 2.1: Estructura y tablas de un modelo relacional
documentos suelen usar la forma clave-valor, de modo que un documento fuera
de sus entorno puede aun ser comprendido.
Codigo 2.1: Ejemplo de fichero en formato JSON
1 {2 "estudiantes" : [
3 {"id" : "e1", "nombre": "Andres Garcia"},4 {"id" : "e2", "nombre": "Manuel Gomez"},5 ],
6 "asignaturas" : [
7 {"id" : "a1", "nombre": "Matematicas"},8 {"id" : "a2", "nombre": "Fisica"},9 ],
10 "estudia" : [
11 {12 "id_est" : "e1",
13 "id_asig" : "a1",
14 "nota" : "B"
15 },{16 "id_est" : "e2",
SIANI — ULPGC 13
Pascual Lorente Arencibia CAPITULO 2. ESTADO DEL ARTE
17 "id_asig" : "a1",
18 "nota" : "C"
19 },{20 "id_est" : "e1",
21 "id_asig" : "a2",
22 "nota" : "A"
23 }, {24 "id_est" : "e2",
25 "id_asig" : "a2",
26 "nota" : "B"
27 },28 ]
29 }
Cabe destacar que muchas organizaciones a lo largo de internet, indepen-
dientemente de como almacenen sus datos, los publican en forma de una sola
tabla, como en la tabla 2.1.
id est n est id asig n asig nota
e1 Andres Garcıa a1 Matematicas B
e2 Manuel Gomez a1 Matematicas C
e1 Andres Garcıa a2 Fısica A
e2 Manuel Gomez a2 Fısica B
Tabla 2.1: Base de datos en formato tabular
El segundo problema es el formato de los datos. A menudo, el mismo dato
se almacena de forma diferente en distintas bases de datos. Por ejemplo, las
fechas tienen multitud de formas de representacion (dd-mm-aaaa, mm/dd/aaaa,
aaaammdd). Algunos modelos incluso utilizan dos o tres campos diferentes (dıa,
mes, ano). Los numeros utilizan distinto separador de decimales en ingles –un
punto (7.2)– y en espanol –una coma (7,2). Los nombres de personas pueden
escribirse en uno o dos campos–nombre y apellido– y dentro del mismo campo
puede escribirse de forma diferente–apellidos, nombre frente a nombre apellidos–
.
Existen herramientas como Pentaho Data Integration[29] que ayudan a uni-
ficar bases de datos, definiendo la estructura final y como se tiene que procesar
cada recurso.
SIANI — ULPGC 14
Pascual Lorente Arencibia CAPITULO 2. ESTADO DEL ARTE
Al resultado final de la union de bases de datos se le conoce como data
warehouse[30] y a su creacion se le debe dedicar gran parte del tiempo.
2.2. Business Intelligence
El termino Business Intelligence[31] engloba las tecnicas para extraer in-
formacion de un gran conjunto de datos, normalmente un data warehouse, que
sirva como ayuda para la toma de decisiones de una empresa u organizacion.
Algunas de estas tecnicas son:
1. Online analytical processing (OLAP): calcula funciones agregadas a traves
de cualquier dimension en los datos en tiempo real. Por ejemplo, cromo-
soma → gen → variante es la dimension de variante. En cada punto de la
dimension se calcula el valor acumulado, como la cantidad o la suma de
un valor especıfico.
2. Consultas: Busquedas especıficas entre los datos: ¿cuantas variantes sin
sentido son catalogadas como peligrosas?
3. Informes: Generacion de tablas, textos cortos y graficas que muestran un
estado determinado de los datos.
4. Analisis predictivo: Extrapolar los datos para averiguar como se compor-
tara el sistema en el futuro.
En los anos 2000, ha aparecido una nueva necesidad de estructurar datos
no estructurados. Debido a la expansion de la web hay accesibles gran cantidad
de datos que no estan estructurados como en una base de datos (artıculos,
blogs, libros...). En eso consiste el sentiment analysis [32]: toma un texto no
estructurado y extrae aquellos datos que pueden ser estructurados. De este modo
se pueden generar nuevos datos para un data warehouse de forma automatica.
2.3. Inteligencia Artificial
De las muchas definiciones que tiene la Inteligencia Artificial hemos escogido
una cita de Bellman[33]:
La automatizacion de actividades que asociamos con el pensa-
SIANI — ULPGC 15
Pascual Lorente Arencibia CAPITULO 2. ESTADO DEL ARTE
miento humano.
En efecto, una de las principales actividades de la inteligencia artificial es
hacer que las maquinas piensen como –y no mas que– los humanos, con las ven-
tajas que un ordenador presenta: trabaja sin descanso, mas rapido y se equivoca
menos.
Una de las ramas de la inteligencia artificial mas antiguas y mas utilizadas en
medicina son los Sistemas basados en Conocimiento (SBC)[34]. Estos sistemas
imitan el razonamiento de personas expertas en un determinada area, como los
medicos. Se dividen en dos subsistemas: la base de hechos, donde se almacena
el conocimiento del experto, y el motor de inferencia, que determina como se
navega a traves de ellos.
Las ventajas de los sistemas expertos es que no olvidan, pueden almacenar
el conocimiento de mas de un experto y trabajan mucho mas rapido.
Normalmente son sistemas que trabajan por evidencias. En la figura 2.2
podemos ver un ejemplo de un sistema experto muy simple para diagnosticar una
enfermedad. Al senalar los sıntomas que padece el paciente, las enfermedades
que estan relacionadas se van ((iluminando)). Cuanto mas ((iluminada)) este mas
puntuacion tendra.
2.4. Interfaz de usuario
Uno de los aspectos mas importantes a la hora de desarrollar un programa
informatico es su interfaz de usuario. A traves de la interfaz el programa muestra
la informacion al usuario y el usuario interactua con el programa.
La interfaz de usuario se debe desarrollar pensando en el usuario y sus ne-
cesidades: hay que conocer quien lo va a utilizar y como. Hay que situar los
elementos donde el usuario espera que esten. La interfaz debe seguir el mis-
mo patron para que una vez el usuario ha aprendido a hacer una cosa, pueda
repetirla de memoria[35].
El diseno no tiene porque ser novedoso, puede imitar interfaces que el usuario
esta acostumbrado a utilizar, eso le ahorrara mucho tiempo y esfuerzo y evitara
que se sienta hostil.
SIANI — ULPGC 16
Pascual Lorente Arencibia CAPITULO 2. ESTADO DEL ARTE
Gripe
Cansancio
Vomitos
Fiebre
Dolor de cabeza
Mareo
Anemia
Nauseas
Figura 2.2: Sistema experto para diagnostico. Al activar los sıntomas Cansancio
y Nauseas, se activan ambas enfermedades, pero la que mas evidencias tiene es
Anemia.
SIANI — ULPGC 17
Pascual Lorente Arencibia CAPITULO 2. ESTADO DEL ARTE
Si hay demasiados elementos, es necesario crear una jerarquıa, dejando vi-
sibles solo los que el usuario va a necesitar al principio, el resto de elementos
debe pasar a un plano secundario. En 1994, el psicologo Miller[36] determino
que el numero de elementos que puede abarcar una persona de un solo vistazo
es de 7±2, eso da un maximo de 9 y un mınimo de 5. Esta es la cantidad de
elementos que deben de tener los menus y las listas de opciones. Este numero
tambien vale para las pantallas o elementos visuales de la aplicacion.
Hay que mantener al usuario informado. Si una accion que realiza tarda
mucho tiempo hay que mostrar una barra de progreso. Si se equivoca en algo,
un mensaje claro que diga en que se equivoco y como puede arreglarlo. En
contraposicion, si el usuario ha hecho algo bien, no se debe mostrar un mensaje,
porque eso le distraera.
SIANI — ULPGC 18
Capıtulo 3
Desarrollo
3.1. Justificacion del proyecto
Ya hemos visto que existen herramientas que pueden predecir si una varian-
te es peligrosa o no y herramientas que establecen relaciones entre proteınas.
Sin embargo, no existe un programa que combine ambos procesos, que no solo
determine la relacion entre una variante y una patologıa, sino que prediga su
efecto.
En este proyecto, vamos a desarrollar un modulo en la aplicacion COAT –
Combination and Annotation Tool[37]–, aplicacion que permite visualizar, ano-
tar y combinar ficheros VCF –ver apendice B–. Este modulo, que lleva como
nombre Poirot va a cumplir con los objetivos del Trabajo: establecer la relacion
entre variante y patologıa y mostrar las interacciones intermedias.
3.2. Recursos
Coat esta completamente desarrollada en el lenguaje de programacion Java.
La incorporacion de nuevos metodos de recorrido de datos y paralelizacion au-
tomatica permiten un aumento significativo del rendimiento. La clase Canvas
aporta un lienzo donde se pueden dibujar formas, textos y lıneas de forma li-
bre. Ademas, Java es multiplataforma, lo que significa que se puede ejecutar en
19
Pascual Lorente Arencibia CAPITULO 3. DESARROLLO
cualquier maquina que tenga instalada la maquina virtual de Java.
Hemos utilizado una metodologıa agil para el desarrollo. En el ano 2001
se creo el Manifiesto por el desarrollo agil [38] con el objeto de mejorar los
resultados en el desarrollo del software, no solo en reduccion de tiempo, sino
tambien en numero de proyectos exitosos.
Estas metodologıas descomponen las tareas en pequenos incrementos de pla-
nificacion mınima, donde cada iteracion culmina con una entrega del software,
aunque este incompleta. Esto significa que todas son modelos iterativos e incre-
mentales.
De este modo, desde muy temprano se puede liberar una version del software
funcional, aunque no completa, permitiendo al cliente probar y usar lo que ya
se ha implementado. Ası, se pueden cambiar, anadir o quitar requisitos desde
el principio. Para los desarrolladores es muy facil anadir pequenos cambios al
software, y no hay que esperar mucho tiempo entre un lanzamiento y el siguiente.
Estas metodologıas son ideales para proyectos que no tengan los requisitos
claros desde un principio, y que puedan usarse aunque solo funcione parte del
sistema.
Dos de las metodologıas agiles mas populares son Scrum[39] y Extrem Pro-
gramming [40] .
En este proyecto, al no existir mas que un desarrollador y un cliente, no se
aplicara estrictamente ninguna metodologıa existente, pero se intentara simular
las caracterısticas principales:
Reuniones periodicas: Intentar reunirse a diario o, al menos, semanalmen-
te. Estas reuniones serviran para poner en comun los progresos y establecer
el trabajo proximo.
Lanzamientos frecuentes: Lanzar una version de la aplicacion al menos
una vez al mes.
Incrementos progresivos: Cada version debe suponer una mejora significa-
tiva respecto a la anterior.
Modificacion agil de requisitos: Asimilacion rapida y positiva de los cam-
bios en los requisitos.
SIANI — ULPGC 20
Pascual Lorente Arencibia CAPITULO 3. DESARROLLO
3.3. Data warehouse
La tabla 3.1 contiene un resumen de las bases de datos que se han utilizado
para crear el data warehouse de Poirot, ası como su tipo. La figura 3.1 muestra
la estructura logica del mismo. Cada base de datos ha sido descargada desde su
fuente y normalizada con un script. Una vez normalizadas, las del mismo tipo
se han almacenado juntas como una sola.
En general, todas las bases de datos de genes o de interacciones presumen de
crear sus datos de manera manual, con revisiones continuas, por lo que podemos
esperar un alto grado de precision y pocos errores. En muchos casos, los registros
estan respaldados por uno o varios artıculos cientıficos.
Tipo Nombre Tamano
Gen–patologıa Omim 6.968
Gen–patologıa HPRD 4.943
Gen–expresion HPRD 112.158
Gen–expresion ProteinAtlas 677.170
Gen–gen IntAct 225.503
Gen–gen MINT 61.427
Gen–gen dip 64.586
Gen–gen BioGrid 424.954
Gen–gen HPRD 39.240
Tabla 3.1: Registros por base de datos
3.3.1. HUGO Gene Nomenclature Comitee
HUGO Gene Nomenclature Comitee (HGNC)[41] es la autoridad encargada
de establecer el nombre y el sımbolo de cada region identificada del ADN, la
mayorıa genes. Para todas las bases de datos, se usara el sımbolo proporcionado
por la HGNC como identificador de cada gen. En caso de que la HGNC no tenga
nombre para un gen en concreto, se usara el que proporcione la base de datos.
Hasta la fecha hay 40.527 entradas.
SIANI — ULPGC 21
Pascual Lorente Arencibia CAPITULO 3. DESARROLLO
Figura 3.1: Estructura del data warehouse
3.3.2. Online Mendelian Inheritance in Man
OMIM es una base de datos desarrollada y mantenida por la Universi-
dad de Medicina Johns Hopkins, North Baltimore, que identifica el fenotipo
–enfermedad o caracterıstica fısica– de cada gen. Permite descargar los datos o
acceder vıa REST API. Tiene 15.513 entradas.
3.3.3. Human Protein Reference Database
Human Protein Reference Database (HPRD)[22] es una base de datos que
indica como se expresa cada proteına en el cuerpo, por lo general listando en
que organos del cuerpo esta presente. Esta financiada por el Institute of Bio-
Informatics. Su ultima actualizacion es del ano 2010, pero sus datos todavıa
son validos. En total, tiene 112.158 expresiones de genes en fenotipos, 39.240
interacciones entre proteınas y 4943 relaciones con patologıas.
SIANI — ULPGC 22
Pascual Lorente Arencibia CAPITULO 3. DESARROLLO
3.3.4. Biological General Repository for Interaction Da-
tasets
Biological General Repository for Interaction Datasets (BioGrid)[42] es una
base de datos que se actualiza mensualmente con interacciones tanto fısicas como
geneticas entre proteınas. Tiene un total de 237.045 registros. Esta desarrollado
entre varias universidades de Canada y posee servicio REST.
3.3.5. Mentha
Mentha[43] es una base de datos creada por la Universidad de Tor Vergata,
Italia que, aparte de contener interacciones entre proteınas, tiene herramientas
online para su visualizacion. Tambien se alimenta de otras bases de datos. Tiene
registradas 385.857 entradas de distintas bases de datos –BioGrid, Mint, IntAct,
MatrixDB, DIP–.
3.3.6. The Human Protein Atlas
The Human Protein Atlas (ProteinAtlas)[44] es una base de datos con millo-
nes de imagenes en alta resolucion que muestran la distribucion espacial de las
proteınas en 44 tejidos humanos normales, 20 cancerıgenos y 46 lıneas celulares
humanas. La base de datos ha sido desarrollada de una manera genocentrica con
la inclusion de todos los genes humanos pronosticados en estudios genomicos.
Las funciones de busqueda permiten realizar consultas complejas sobre perfiles
de expresion de proteınas, clases de proteınas y localizacion de cromosomas.
Esta base de datos tambien contiene informacion acerca de la presencia de
secuencias de ARN en cada tejido. De este modo, el ARN puede confirmar o
desmentir la presencia de una proteına.
3.4. Evaluacion de variantes
Para determinar cual es el impacto de una variante sobre una enfermedad,
Poirot crea un grafo formado por la lista de todas las enfermedades y expresiones
que hay en el data warehouse, los genes afectados por al menos una variante, y
SIANI — ULPGC 23
Pascual Lorente Arencibia CAPITULO 3. DESARROLLO
todos los genes haya interconectados entre cualquier enfermedad y variante. Este
grafo es no dirigido –las relaciones no tienen direccion– y cada relacion contiene
todas las interacciones que haya entre dos nodos. La figura 3.2 representa el grafo
que utiliza Poirot. El apendice C muestra el diagrama de clases que representa
el grafo en memoria.
Enfermedad
Gen
Gen
Gen
Gen
v1
v1
v2
v3
i1
i1,i2
i1,i2,i3
i1,i2
i1
Figura 3.2: Grafo de interacciones de Poirot
Poirot agrupa todas las variantes del mismo gen y obtiene una sola puntua-
cion para el gen en base a la ecuacion 3.1:
Pgen =α ·max(Pvariante) + (1− α) ·max(Pvecino)
distancia(3.1)
donde α es la proporcion entre el impacto de las variantes y el impacto de
las relaciones. Cuanto mas alto, mas se valoraran las variantes y menos las
relaciones. Este factor lo situamos empıricamente en el intervalo [0,8-0,9]. Para
el calculo del vecino maximo, se utilizan solo las interacciones hacia genes con
mayor distancia.
Pvariante es el valor de una variante, que se calcula por su consecuencia mas
SIANI — ULPGC 24
Pascual Lorente Arencibia CAPITULO 3. DESARROLLO
grave:
Pvariante = max(Pconsecuencia) (3.2)
Las variantes modifican la secuencia genetica. Dependiendo de donde se en-
cuentre la variante y cual sea su forma, puede tener distintas consecuencias.
Cada consecuencia tiene una gravedad y un impacto diferente[45]. Para las con-
secuencias se han establecido cuatro niveles de impacto: alto, moderado, bajo y
modificador. El apendice D detalla el listado de consecuencias y su impacto. La
tabla 3.2 indica el valor numerico de cada una.
Consecuencia Valor
Alto 1,0
Moderado 0,8
Bajo 0,4
Modificador 0,2
Tabla 3.2: Valor de cada consecuencia
Pvecino es el valor de la interaccion con mayor impacto multiplicado por el
valor del gen relacionado.
Pvecino = max (Pinteraccion) · Pgen (3.3)
Pinteraccion tambien es un valor en funcion del tipo. Los principales tipos de
interaccion son:
Interaccion funcional no necesariamente fısica Es el tipo de interaccion
mas fuerte. Al alterar la cantidad o forma de una proteına –mediante una
mutacion– se observa un cambio en la funcion de otra.
Interaccion fısica no necesariamente funcional Ambas proteınas forman
parte de uno o varios complejos fısicos. Es decir, estan juntas en la mis-
ma estructura. Un cambio en una de ellas no tiene por que afectar al
funcionamiento de la otra.
Colocalizacion sin interaccion conocida Ambas proteınas estan presentes
en la misma fraccion subcelular, pero no existe evidencia de una interac-
cion fısica.
Una lista mas detallado con los subtipos de relaciones y su impacto esta
detallada en el apendice E. Los valores numericos asociados estan en la tabla
3.3.
SIANI — ULPGC 25
Pascual Lorente Arencibia CAPITULO 3. DESARROLLO
Interaccion Valor
Alto 0,9
Moderado 0,6
Bajo 0,2
Tabla 3.3: Valor de cada interaccion
Para calcular la distancia utilizamos un algoritmo de inundacion. Partimos
de cada fenotipo –enfermedad o expresion– y lo marcamos como distancia 0.
Luego, a cada uno de los nodos conectados directamente le damos distancia 1.
Ahora repetimos desde los nodos con distancia 1 y marcamos a sus vecinos con
distancia 2, excepto a los que tienen distancia 0 o 1. Ası hasta que hayamos
alcanzado todos los nodos.
Si solo queremos saber la distancia a un fenotipo en particular, empezaremos
en ese fenotipo.
Por ultimo, como tanto las enfermedades como las expresiones forman parte
del mismo grafo, es interesante la posibilidad de darles una puntuacion. Es-
to servira para crear un nuevo ranking con el impacto de cada enfermedad y
expresion.
Pfenotipo = max(Pvecino) (3.4)
3.5. Entrada de datos
Lo unico que debe introducir el usuario en Poirot es la lista de variantes.
Estas estaran en un fichero VCF que tiene que estar anotado utilizando VEP. En
concreto, de cada variante genetica se espera que tenga las siguientes etiquetas:
SYMBOL Nombre del gen donde se encuentra la variante.
SIFTs Valoracion de SIFT, un numero entre 0 y 1.
CONS Consecuencias de la variante, separadas por comas.
BIO Biotipo del gen.
SIANI — ULPGC 26
Pascual Lorente Arencibia CAPITULO 3. DESARROLLO
3.6. Interfaz de usuario
Poirot esta formado por dos pantallas, la pantalla de fenotipos y la pantalla
de genes.
3.6.1. Pantalla de fenotipos
La pantalla de fenotipos tiene como objetivo la seleccion de fenotipos. Pa-
ra ello, esta pantalla muestra la lista de todos los fenotipos ordenados por su
puntuacion. Desde aquı, se puede navegar por la lista para seleccionar indivi-
dualmente cada fenotipo, se pueden filtrar por nombre y se pueden mostrar solo
las enfermedades o solo las expresiones.
En la imagen 3.3 se distinguen 5 elementos visuales:
1. A la izquierda una lista para la seleccion de grupo –TODOS, SELECCIO-
NADOS, ENFERMEDAD, EXPRESION–.
2. Arriba el cuadro de busqueda que filtra segun se va escribiendo.
3. A la derecha arriba la cabecera de la tabla sirve para ordenar por nombre
y puntuacion.
4. A la derecha abajo la tabla de fenotipos para seleccionar.
5. Abajo, un boton para pasar a la siguiente pantalla.
3.6.2. Pantalla de genes
La segunda pantalla es donde mas tiempo pasara el usuario. En ella se mues-
tran los genes mas probables de afectar a una enfermedad o expresion. Esta
formada por los 6 elementos marcados en la figura 3.4:
A la izquierda la tabla de genes: Se pueden ordenar por nombre, distancia
al fenotipo y valor.
A la derecha el elemento principal: el grafo. En el se muestran las relaciones
entre los genes seleccionados y los fenotipos. Los nodos del grafo se pueden
desplazar y seleccionar. Las relaciones se pueden seleccionar.
A la derecha abajo: informacion de seleccion. Muestra informacion acerca
del elemento seleccionado en el grafo. Si se ha seleccionado un gen, se
SIANI — ULPGC 27
Pascual Lorente Arencibia CAPITULO 3. DESARROLLO
Figura 3.3: Pantalla de fenotipos
muestra su nombre completo y su lista de variantes, si se selecciona una
relacion, la lista de interacciones.
A la izquierda arriba un boton para volver a la pantalla de fenotipos.
A la izquierda abajo, un boton para actualizar el grafo con los genes
seleccionados.
Figura 3.4: Pantalla de genes
SIANI — ULPGC 28
Capıtulo 4
Resultados
Para demostrar la eficacia de Poirot hemos elegido un paciente cuya aso-
ciacion entre variante y enfermedad es conocida. Este paciente padece hiper-
colesterolemia familiar, una patologıa sufrida por una mutacion en el gen que
codifica para el receptor de las lipoproteınas de baja densidad (LDLR). Para
este paciente, siguiendo el metodo explicado en el apendice A, hemos obtenido
540.510 variantes, de las cuales 162.051 tienen una frecuencia en la poblacion
inferior a 0,05. En una variante patologica es de esperar que su frecuencia en la
poblacion sea inferior a 1 de cada 20.
Al realizar el analisis Poirot, se alcanza un total de 6941 enfermedades y 573
expresiones. Si buscamos la hipercolesterolemia familiar, la encontramos en la
posicion 40 –entre el 1 % con mas valoracion, tanto en enfermedades como en el
total–, como se puede ver en la tabla 4.1.
La lista de genes candidatos a la hipercolesterolemia se muestra en la tabla
4.2, donde se comprueba que efectivamente es el LDLR el gen con mas valora-
cion. Este gen del cromosoma 19 tiene una delecion de tres codones en la posicion
11.223.963 provocando una inframe deletion, una consecuencia de impacto alto
(1,0).
La figura 4.1 muestra las interacciones entre los 5 genes mas valorados y la
hipercolesterolemia familiar. Se puede ver que hay una relacion directa entre
el LDLR y el gen Apolipoprotein B (APOB), un gen que se traduce en una
proteına que se adhiere a los lıpidos y que tambien presenta hasta tres variantes
29
Pascual Lorente Arencibia CAPITULO 4. RESULTADOS
Posicion Valor Enfermedad
1 0,909 Cystinuria
2 0,9001392 Lymphoma, non-Hodgkin
3 0,9001392 Hemophagocytic lymphohistiocytosis, familial, 2
4 0,9001392 Aplastic anemia
5 0,900108 Carboxylesterase 1 deficiency
...
40 0,81 Hypercholesterolemia, familial
41 0,81 LDL cholesterol level QTL2
Tabla 4.1: Enfermedades de mayor valor en un paciente con hipercolesterolemia
familiar.
Gen Valor Distancia
LDLR 0,847 1
APOB 0,372 2
MAP4 0,366 2
PXDN 0,320 2
INPP5D 0,308 3
Tabla 4.2: Genes implicados en la hipercolesterolemia familiar
de tipo missense.
Con este analisis se demuestra la capacidad de Poirot de relacionar una
enfermedad a los genes y variantes mas relevantes en su causalidad.
Por ultimo, para demostrar el potencial de Poirot como herramienta de
diagnostico, veamos el analisis de la enfermedad que aparece en primer lugar en
la tabla 4.1, la cistinuria, con un valor de 0,909, una enfermedad que provoca
piedras en el rinon.
El miembro 1 de la familia 3 de transportadores de soluto (SLC3A1) tiene
una delecion de tipo splice donor. Esta proteına transporta aminoacidos en los
intestinos y rinones y tiene una relacion directa con la cistinuria.
SIANI — ULPGC 30
Pascual Lorente Arencibia CAPITULO 4. RESULTADOS
Figura 4.1: Interacciones de los genes mas implicados en la hipercolesterolemia.
Cada punto alrededor de un gen representa una variante, cuanto mas roja, mayor
impacto tiene.
SIANI — ULPGC 31
Capıtulo 5
Conclusiones
En este Trabajo de Fin de Master se ha desarrollado Poirot, un programa
que cumple con los objetivos establecidos:
Muestra un ranking de genes puntuados de 0 a 1 segun su relevancia con
la patologıa o fenotipo.
Muestra las interacciones entre un gen afectado y la patologıa o fenotipo
escogidos.
Ademas, como caracterıstica adicional introducida por el cliente en una de
las ultimas iteraciones, se ha implementado un ranking de enfermedades por
paciente. Esto significa, que desde el punto de partida, el usuario puede ver
cuales son las enfermedades con mas probabilidades de estar afectadas por una
variante en el paciente.
Este ranking permite asociar patologıas a variantes, de gran utilidad para el
barrido de mutaciones en una poblacion y el cribado preimplantacional.
Para poder desarrollar esta aplicacion, se ha implementado un modulo que
combina y almacena las distintas bases de datos en un data warehouse local.
32
Pascual Lorente Arencibia CAPITULO 5. CONCLUSIONES
5.1. Trabajo futuro
Este Trabajo de Fin de Master ha servido para desarrollar la estructura prin-
cipal de un programa que evalua variantes geneticas. A partir de esta estructura
es posible anadir nuevas caracterısticas, siempre pensando en el objetivo prin-
cipal de la UICHUIMI: aplicar la secuenciacion de exoma al diagnostico clınico.
Sistema propio de generacion de relaciones basado en sentimental analysis,
que consiste en extraer datos estructurados de textos no estructurados. En
las bases de datos que utiliza Poirot cada entrada es escrita a mano por una
persona que lee y procesa un artıculo cientıfico. El sentimental analysis
permite automatizar este proceso.
Jerarquıa de enfermedades: En Poirot se muestran las enfermedades en
un listado con miles de entradas. Serıa interesante mostrarlas agrupadas
y jerarquizadas.
Sistema de puntuacion. Poirot utiliza el sistema de puntuacion descrito
en la seccion 3.4. Este sistema es bastante rıgido y no permite al usuario
controlar sus parametros. Es necesario desarrollar un sistema que no solo
abarque mas elementos, sino que este mas parametrizado para otorgar el
control al usuario.
Nuevas relaciones: Existen otros tipos de interacciones no descritos aquı
que pueden mejorar las relaciones entre los nodos como, por ejemplo, entre
una proteına y su funcion. Esta relacion permite relacionar proteınas con
la misma funcion.
Esquema de visualizacion: El esquema actual de visualizacion de relaciones
esta centrado en los fenotipos. Se muestra en forma de arbol como una
jerarquıa que admite interacciones cruzadas, pero no en el mismo nivel.
Se pueden explorar nuevas formas de ver las interacciones.
SIANI — ULPGC 33
Apendice A
Obtencion de variantes
A continuacion se muestra un ejemplo con comandos simplificados de como
se alinean las secuencias y como se localizan las variantes. Este proceso es el
que genera los ficheros de variantes que utiliza Poirot.
Los ficheros de entrada son los que contienen las secuencias:
sec-directas.fastq.gz
sec-inversas.fastq.gz
Tambien son necesarios otros ficheros como el genoma de referencia y algunas
bases de datos con variantes de referencia, pero no se incluyen para simplificar
el codigo.
El primer paso consiste en alinear las secuencias con el genoma de referencia.
bwa aln sec−d i r e c t a s . f a s t q . gz > sec−d i r e c t a s . s a i
bwa aln sec−i n v e r s a s . f a s t q . gz > sec−i n v e r s a s . s a i
bwa sampe sec−d i r e c t a s . f a s t q . gz sec−i n v e r s a s . f a s t q . gz \\sec−d i r e c t a s . s a i sec−i n v e r s a s . s a i > \\a l ineamiento s . bam
Aunque en estos momentos se pueden buscar las variantes con respecto al
genoma de referencia, se recomiendo realizar una limpieza y puesta a punto de
este fichero:
34
Pascual Lorente Arencibia APENDICE A. OBTENCION DE VARIANTES
# Eliminar s e c u e n c i a s no a l i n e a d a s
java −j a r CleanSam . j a r \\INPUT=al ineamiento s . bam \\OUTPUT=aln1 . bam
# Ordenar a l i n e a m i e n t o s
java −j a r SortSam . j a r \\INPUT=aln1 . bam \\OUTPUT=aln2 . bam
# Eliminar r e p e t i d o s
java −j a r MarkDuplicates . j a r \\INPUT=aln2 . bam \\OUTPUT=aln3 . bam
# Estandar i zar cabeceras
java −j a r AddOrReplaceReadGroups . j a r \\INPUT=aln3 . bam \\OUTPUT=aln4 . bam
Para reducir falsos positivos, se pueden utilizar dos pasos intermedios: el
realineado y el recalibrado.
# Real inear
java −j a r Gatk . j a r −T Real ignerTargetCreator \\−I a ln4 . bam \\−o i n t e r v a l s
java −j a r Gatk . j a r −T I n de lR ea l i gn e r \\−I a ln4 . bam \\−t a r g e t I n t e r v a l s i n t e r v a l s \\
−o aln5 . bam
# R e c a l i b r a r
java −j a r Gatk . j a r −T BaseReca l ib rator \\−I a ln5 . bam \\−o r e c a l
java −j a r Gatk . j a r −T PrintReads \\−I a ln5 . bam \\−o a l ineamiento s . bam
Ahora sı se pueden buscar las variantes con una tasa de falsos positivos mas
baja que con los alineamientos iniciales.
SIANI — ULPGC 35
Pascual Lorente Arencibia APENDICE A. OBTENCION DE VARIANTES
java −j a r Gatk . j a r −T HaplotypeCal ler \\−I a l i neamiento s . bam \\−o v a r i a n t e s . vc f
Al final del proceso tendremos un fichero con todas las variantes:
variantes.vcf
SIANI — ULPGC 36
Apendice B
Variant Call Format
El formato VCF[46] es un formato generico para almacenar informacion de
polimorfismos en el ADN, como SNPs, InDels y variantes estructurales, ası como
todo tipo de anotaciones. VCF se puede almacenar comprimido y se puede
indexar para acceder rapidamente a variantes en un rango de posiciones.
La cabecera contiene un numero arbitrario de lıneas que comienzan con los
caracteres ## (doble almohadilla). Solo la primera, ##fileformat, y la ultima,
#CHROM, son obligatorias. Las cabeceras se utilizan para describir de forma
estandar las etiquetas y anotaciones que se utilizan en la seccion de datos.
La ultima lınea de la cabecera debe escribirse siempre igual, con los nombres
de las columnas de datos separados por tabulador, a saber:
37
Pascual Lorente Arencibia APENDICE B. VARIANT CALL FORMAT
CHROM Cromosoma
POS Posicion
ID Identificador unico de variante
REF Alelo de referencia
ALT Lista de variantes, separadas por coma
QUAL Valor de calidad
FILTER Filtros aplicados
INFO Lista de anotaciones, separadas por ; (punto y coma).
FORMAT [Opcional] Formato de la siguiente columna, etiquetas
separadas por : (dos puntos)
SAMPLE1 [Opcional] 1 o mas columnas con la informacion repre-
sentada en FORMAT para distintas muestras.
Tabla B.1: Columnas del formato VCF.
Ası es un fichero VCF.
##fileformat=VCFv4.1
##fileDate=20090805
##source=myImputationProgramV3.1
##phasing=partial
##INFO=<ID=DP,Number=1,Type=Integer,Description="Total Depth))
##FILTER=<ID=s50,Description="Less than 50 % have data))
##FORMAT=<ID=GT,Number=1,Type=String,Description="Genotype))
#CHROM POS ID REF ALT QUAL FILTER ...
20 14370 rs6054257 G A 29 PASS ...
20 17330 . T A 3 q10 ...
20 1110696 rs6040355 A G,T 67 PASS ...
20 1230237 . T . 47 PASS ...
Tabla B.2: Ejemplo de fichero VCF.
SIANI — ULPGC 38
Apendice C
Estructura de Poirot
A continuacion se describen las clases que forman el nucleo de la aplicacion.
PearlGraph Representa el grafo completo en memoria. Contiene la totalidad
de enfermedades, expresiones, genes e interacciones.
Pearl Representa un nodo en el PearlGraph. Los tipos de nodos que hay son:
GENE, EXPRESSION, DISEASE.
PearlRelationship Representa una relacion entre dos Pearl.
Graph Representa un grafo que se muestra en pantalla. Es un grafo parcial de
un PearlGraph.
GraphNode Representa un nodo en un Graph. Contiene una Pearl, ası como
elementos que representan su estado visual: selected, position.
GraphRelationship Representa una relacion entre dos GraphNode. Contiene
1 o mas PearlRelationship.
GrapFactory A partir de una lista de variantes forma un PearlGraph.
ShortestPath A partir de una Pearl, lista todos los caminos de distancia mas
corta entre el nodo y el fenotipo activo–seleccionado– mas cercano.
GraphEvaluator Toma un PearlGraph y una lista de fenotipos (Pearl) y
evalua cada elemento del grafo en base a los fenotipos. Si no se especi-
fica una lista de fenotipos, los toma todos.
Por simplicidad, solo se muestra el diagrama que representa el grafo en la
39
Pascual Lorente Arencibia APENDICE C. ESTRUCTURA DE POIROT
figura C.1.
Figura C.1: Diagrama de clases que representa como se almacenan los nodos
–perlas– en la aplicacion.
SIANI — ULPGC 40
Apendice D
Consecuencias
La figura D.1 muestra el nombre que recibe cada variante segun su posicion.
A continuacion se describe cada una ellas. Se mantiene la descripcion en ingles
porque gran parte de los terminos no tiene traduccion al castellano.
Figura D.1: Posicion de cada variante segun su consecuencia. Fuente:
www.ensembl.org
Consecuencias de impacto alto (high):
Frameshift variant: A sequence variant which causes a disruption of the
translational reading frame, because the number of nucleotides inserted or
deleted is not a multiple of three.
Stop lost: A sequence variant where at least one base of the terminator
codon (stop) is changed, resulting in an elongated transcript.
41
Pascual Lorente Arencibia APENDICE D. CONSECUENCIAS
Start lost: A codon variant that changes at least one base of the canonical
start codon.
Transcript amplification: A feature amplification of a region containing
a transcript.
Consecuencias de impacto moderado (Moderate):
Inframe insertion: An inframe non synonymous variant that inserts ba-
ses into in the coding sequenc
Inframe deletion: An inframe non synonymous variant that deletes bases
from the coding sequenc.
Missense variant: A sequence variant, that changes one or more ba-
ses, resulting in a different amino acid sequence but where the length is
preserved.
Protein altering variant: A sequence variant which is predicted to chan-
ge the protein encoded in the coding sequence.
Regulatory region ablation: A feature ablation whereby the deleted
region includes a regulatory region.
Consecuencias de impacto bajo (Low):
Splice region variant: A sequence variant in which a change has occu-
rred within the region of the splice site, either within 1-3 bases of the exon
or 3-8 bases of the intron.
Incomplete terminal codon variant: A sequence variant where at least
one base of the final codon of an incompletely annotated transcript is
changed.
Stop retained variant: A sequence variant where at least one base in
the terminator codon is changed, but the terminator remains.
Synonymous variant: A sequence variant where there is no resulting
change to the encoded amino acid.
Consecuencias de impacto modificador (Modifier):
Coding sequence variant: A sequence variant that changes the coding
sequence.
Mature miRNA variant: A transcript variant located with the sequence
of the mature miRNA.
SIANI — ULPGC 42
Pascual Lorente Arencibia APENDICE D. CONSECUENCIAS
5 prime UTR variant: A UTR variant of the 5’ UTR.
3 prime UTR variant: A UTR variant of the 3’ UTR.
Non coding transcript exon variant: A sequence variant that changes
non-coding exon sequence in a non-coding transcript.
Intron variant: A transcript variant occurring within an intron.
NMD transcript variant: A variant in a transcript that is the target of
NMD.
Non coding transcript variant: A transcript variant of a non coding
RNA gene.
Upstream gene variant: A sequence variant located 5’ of a gene.
Downstream gene variant: A sequence variant located 3’ of a gene.
TFBS ablation: A feature ablation whereby the deleted region includes
a transcription factor binding site.
TFBS amplification: A feature amplification of a region containing a
transcription factor binding site.
TF binding site variant: A sequence variant located within a transcrip-
tion factor binding site.
Regulatory region amplification: A feature amplification of a region
containing a regulatory region.
Feature elongation: A sequence variant located within a regulatory re-
gion.
Regulatory region variant: A sequence variant located within a regu-
latory region.
Feature truncation: A sequence variant that causes the reduction of a
genomic feature, with regard to the reference sequence.
Intergenic variant: A sequence variant located in the intergenic region,
between genes.
SIANI — ULPGC 43
Apendice E
Interacciones
Interaccion funcional no necesariamente fısica (alto):
additive genetic interaction defined by inequality
suppressive genetic interaction defined by inequality
synthetic genetic interaction defined by inequality
genetic inequality
Interaccion fısica no necesariamente funcional (moderado):
direct interaction
physical association
association
Interaccion de colocalizacion (bajo):
colocalization
44
Bibliografıa
[1] Watson J y Crick F. A Structure for Deoxyribose Nucleic Acid. Nature,
171:737–738, 1953.
[2] Russell PJ. Genetics. Harper Collins, 4a edicion, 1996.
[3] Feuk L, Carson AR y Scherer SW. Structural variation in the human ge-
nome. Nat Rev Genet, 7(2):85–97, 2006.
[4] Sanger F y Coulson AR. A rapid method for determining sequences in DNA
by primed synthesis with DNA polymerase. J Mol Biol, 94(3):441–448, 1975.
[5] Shendure J y Ji H. Next-generation DNA sequencing. Nat Biotech,
26(10):1135–1145, 2008.
[6] Bamshad MJ, Ng SB, Bigham AW, Tabor HK, Emond MJ, Nickerson DA
et al . Exome sequencing as a tool for Mendelian disease gene discovery.
Nat Rev Genet, 12(11):745–755, 2011.
[7] Rabbani B, Tekin M y Mahdieh N. The promise of whole-exome sequencing
in medical genetics. J Hum Genet, 59(1):5–15, 2014.
[8] Cooper DN, Chen JM, Ball EV, Howells K, Mort M, Phillips AD et al .
Genes, mutations, and human inherited disease at the dawn of the age of
personalized genomics. Hum Mutat, 31(6):631–655, 2010.
[9] Lee H, Deignan JL, Dorrani N, Strom SP, Kantarci S, Quintero-Rivera F et
al . Clinical exome sequencing for genetic identification of rare Mendelian
disorders. JAMA, 312(18):1880–1887, 2014.
[10] Yang Y, Muzny DM, Reid JG, Bainbridge MN, Willis A, Ward PA et al.
Clinical whole-exome sequencing for the diagnosis of mendelian disorders.
N Engl J Med, 369:1502–1511, 2013.
45
Pascual Lorente Arencibia BIBLIOGRAFIA
[11] Yang Y, Muzny DM, Xia F, Niu Z, Person R, Ding Y et al . Molecular fin-
dings among patients referred for clinical whole-exome sequencing. JAMA,
312(18):1870–1879, 2014.
[12] Burge C y Karlin S. Prediction of complete gene structures in human ge-
nomic DNA. J. Mol. Biol, 268(1):78–94, 1997.
[13] Lawrence PA. The Making of a Fly. Blackwell Science, 1992.
[14] Wang Genomics Lab. Phenolyzer, Junio 2015. http://phenolyzer.usc.
edu/index.php.
[15] National Institute of Environmental Health Sciences. CTD’s MEDIC disea-
se vocabulary, Junio 2015. http://ctdbase.org/reports/CTD_diseases.
tsv.gz.
[16] Institute for Genome Sciences. Disease Ontology, Junio 2015. http://
disease-ontology.org/downloads.
[17] Johns Hopkins University. Online Mendelian Inheritance in Man, Julio
2015. http://omim.org/downloads.
[18] National Center for Biotechnology Information. ClinVar, Julio 2015. http:
//www.ncbi.nlm.nih.gov/clinvar/.
[19] University of Washington, Seattle. GeneReviews, Julio 2015. http://www.
ncbi.nlm.nih.gov/books/NBK1116/.
[20] INSERM. Orphanet: an online rare disease and orphan drug data base,
Julio 2015. http://www.orpha.net.
[21] National Human Genome Research Institute. A Catalog of Published
Genome-Wide Association Studies, Marzo 2015. http://www.genome.gov/
gwastudies/.
[22] Keshava Prasad TS, Goel R, Kandasamy K, Keerthikumar S, Kumar S,
Mathivanan S et al . Human Protein Reference Database–2009 update. Nu-
cleic acids research, 37:D767–72, 2009. http://www.hprd.org/.
[23] National Center for Biotechnology Information. BioSystems, Marzo 2015.
https://www.ncbi.nlm.nih.gov/biosystems.
[24] European Bioinformatics Institute. HGNC Database, HUGO Gene Nomen-
clature Committee, Marzo 2015. www.genenames.org.
SIANI — ULPGC 46
Pascual Lorente Arencibia BIBLIOGRAFIA
[25] Szklarczyk D, Franceschini A, Wyder S, Forslund K, Heller D, Huerta-
Cepas J eta al . STRING v10: protein-protein interaction networks, inte-
grated over the tree of life. Nucleic acids research, (43):D447–52, 2015.
[26] Prateek K, Steven H y Pauline CN. Predicting the effects of coding non-
synonymous variants on protein function using the SIFT algorithm. Nature
Protocols, (8):1073–1081, 2009.
[27] Adzhubei IA, Schmidt S, Peshkin L, Ramensky VE, Gerasimova A, Bork
P et al . A method and server for predicting damaging missense mutations.
Nature methods, 7(4):248–9, 2010.
[28] McLaren W, Pritchard B, Rios D, Chen Y, Flicek P y Cunningham F.
Deriving the consequences of genomic variants with the Ensembl API and
SNP Effect Predictor. Bioinformatics, 26(16):2069–2070, 2010.
[29] Hitachi Group Company. Data Integration — Pentaho Business Analy-
tics Platform, Diciembre 2015. http://www.pentaho.com/product/
data-integration.
[30] Devlin B. Data Warehouse: From Architecture to Implementation.
Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA, 1996,
ISBN 0201964252.
[31] Watson HJ y Wixom BH. The Current State of Business Intelligence. Com-
puter, 40(9):96–99, 2007.
[32] Pang B y Lee L. Opinion mining and sentiment analysis. Foundations and
Trends in Information Retrieval, 2008.
[33] Bellman R. Artificial Intelligence: Can Computers Think? Thomson Cour-
se Technology, 4a edicion, 1978.
[34] James AR, Dana SN y Pearl YW. Diagnostic expert systems based
on a set covering model. International Journal of Man-Machine Stu-
dies, 19(5):437–460, 1983. http://www.sciencedirect.com/science/
article/pii/S0020737383800650.
[35] Treehouse. 10 User Interface Design Fundamentals, Agosto 2012. http://
blog.teamtreehouse.com/10-user-interface-design-fundamentals.
[36] Miller GA. The magical number seven, plus or minus two: Some limits on
our capacity for processing information. Psychological Review, (2):343–352,
1994.
SIANI — ULPGC 47
Pascual Lorente Arencibia BIBLIOGRAFIA
[37] Unidad de Investigacion del Complejo Hospitalario Universitario Insular –
Materno Infantil. COAT – Combiantion and Annotation Tool, Diciembre
2015. https://github.com/uichuimi/Coat.git.
[38] Beedle M, van Bennekum A, Cockburn A, Cunningham W, Fowler M y
Highsmith J. Manifesto for Agile Software Development, Diciembre 2015.
http://www.agilemanifesto.org/.
[39] Beck K y Fowler M. Planning Extreme Programming. Addison-Wesley
Professional, 2001.
[40] Schwaber K. Agile Project Management with Scrum. Microsoft Press, 2004.
[41] HGNC. HUGO Gene Nomenclature Committee, Agosto 2015. www.
genenames.org.
[42] Chatr-aryamontri A, Breitkreutz BJ, Oughtred R, Boucher L, Heinicke S,
Chen D et al . The BioGRID interaction database: 2015 update. Nucleic
acids research, 43:D470–8, 2015.
[43] Calderone A, Castagnoli L y Cesareni G. mentha: a resource for browsing
integrated protein-interaction networks. Nat Meth, 10:690–691, 2013. http:
//mentha.uniroma2.it.
[44] Ponten F, Jirstrom K y Uhlen M. The Human Protein Atlas–a tool for
pathology. The Journal of pathology, 216(12):387–93, 2008.
[45] Ensembl. Predicted data, Septiembre 2015. http://www.ensembl.org/
info/genome/variation/predicted_data.html#consequences.
[46] Petr D, Adam A, Goncalo A, Cornelis AA, Eric B, Mark AD et al . The
variant call format and VCFtools. Bioinformatics, 27(15):2156–2158, 2011.
SIANI — ULPGC 48