Universidade de Aveiro
Departamento de Electrónica, Telecomunicações e Informática
Licenciatura em Engenharia Electrónica e Telecomunicações
Relatório de Projecto de Final de Curso
Ano Lectivo 2005/2006
Exploração, filtragem e análise de dados laboratoriais
Orientadores:
Prof. José Luís Oliveira
Eng. Joel Arrais
Autores:
Francisco Castro Lopes
nº mec. 21741
Hugo Luís de Melo Pais
nº mec. 21053
Universidade de Aveiro, DETI/IEETA, 3810-193 Aveiro, Portugal
Julho 2006
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
Índice:
1.
Introdução ........................................................................................................... 4
2.
1.1.
Contextualização do trabalho realizado......................................................... 4
Objectivos ........................................................................................................... 5
3.
2.1.
Actividades previstas..................................................................................... 5
Resumo ............................................................................................................... 6
4.
Conceitos de Biologia e Tecnologia “Microarray” ........................................... 7
4.1.
Biologia Molecular......................................................................................... 7
4.1.1.
4.1.2.
4.1.3.
4.2.
O Ácido Desoxirribonucleico (ADN).............................................................................. 9
Síntese Proteica – o processo de formação de proteínas............................................ 10
Reacção em cadeia por polimerase (PCR – Polymerase chain reaction)..................... 11
Tecnologia “Microarray” .............................................................................. 12
4.2.1.
4.2.2.
4.2.3.
4.2.4.
4.2.5.
5.
Como se fabrica e como funciona um Microarray ....................................................... 12
Microarrays – o princípio de funcionamento................................................................ 13
Construção do microarray.......................................................................................... 14
Desafios para a tecnologia “ Microarray ” ................................................................... 15
Desafios para a Bioinformática .................................................................................. 16
Controlo de qualidade e análise de dados...................................................... 17
5.1.
5.2.
Fases do ciclo experimental biológico ......................................................... 17
Controlo de qualidade ................................................................................. 18
5.2.1.
5.2.2.
Técnicas para redução de efeitos indesejados (fontes de ruído) ................................. 19
Métodos usados para correcção de background e normalização................................. 20
5.3.
5.4.
6.
Análise de dados experimentais.................................................................. 21
Análise baseada em modelos e considerações sobre o design experimental
22
Sistema de Gestão de Informação Laboratorial (LIMS) da Universidade de
Aveiro, MIND – Microarray Information Database .................................................. 25
6.1.
O que é um LIMS? ...................................................................................... 25
6.2.
O que é o Mind?.......................................................................................... 25
6.3.
O que é um LIMS? Normas e Ontologias na base do sistema MIND........... 26
6.4.
Arquitectura do MIND.................................................................................. 27
7. Levantamento de Packages em R, Identificação de ferramentas e
funcionalidades para análise de dados de experiências de Microarrays............. 29
7.1.
Identificação e Levantamento de packages R, ferramentas Web e pacotes
comerciais .............................................................................................................. 29
7.1.1.
7.1.2.
7.1.3.
7.1.4.
7.1.5.
7.1.6.
7.1.7.
7.1.8.
7.1.9.
7.1.10.
7.1.11.
7.1.12.
7.1.13.
7.1.14.
SAM (Significance Analysis of Microarrays) versão 2.2.0 ............................................ 32
SMA (Statistics for Microarray Analysis) versão 0.5.13 (2003/08/15) ........................... 33
GeneTS (Gene Transcription) versão 2.8.0 (2005/08/15) ............................................ 33
LIMMA (Linear Models for Microarray Data) versão 2.4.7 (2006/01/03) ....................... 34
YASMA (Yet Another Statistical Microarray Analysis) v 0.20 ....................................... 35
BIOCONDUCTOR..................................................................................................... 36
SNOMAD ( Standardization and NOrmalization of MicroArray Data )........................... 37
Cap-Web (Cgh Array analysis Platform on the WEB).................................................. 38
GeneSpring gx 7.3 .................................................................................................... 40
GeneSight v4.1 ......................................................................................................... 41
J-Express Pro 2.7...................................................................................................... 42
Rosetta Resolver....................................................................................................... 43
Spotfire DecisionSite System v8.2.............................................................................. 44
S+ArrayAnalyzer®..................................................................................................... 44
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
2
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
8.
Grafcreator ........................................................................................................ 46
8.1.
8.2.
8.2.1.
8.2.2.
8.2.3.
8.3.
8.3.1.
8.3.2.
8.3.3.
8.3.4.
9.
Objectivos ................................................................................................... 46
Ferramentas utilizadas ................................................................................ 46
Tecnologia de desenvolvimento ................................................................................. 46
Linguagem estatística utilizada .................................................................................. 46
Interligação Java – R................................................................................................. 47
Sistema implementado................................................................................ 48
Diagrama de blocos................................................................................................... 48
Diagrama de fluxo da aplicação ................................................................................. 49
Diagrama de fluxo para o utilizador ............................................................................ 50
Conversão dos ficheiros ............................................................................................ 54
Mind – Controlo de qualidade e análise de dados.......................................... 56
9.1.
9.2.
9.2.1.
9.2.2.
9.2.3.
9.3.
9.3.1.
9.3.2.
9.3.3.
9.3.4.
9.3.5.
9.3.6.
Objectivos ................................................................................................... 56
Análise ao sistema base (MIND) ................................................................. 56
Tecnologia de desenvolvimento ................................................................................. 56
Modelo de dados....................................................................................................... 57
Formato dos ficheiros ................................................................................................ 58
Sistema Implementado................................................................................ 58
Diagrama de blocos ............................................................................................................................. 58
RLinker ................................................................................................................................................. 59
Design Experimental ............................................................................................................................ 61
“WorkFlow” para o utilizador ................................................................................................................ 64
“WorkFlow” Global................................................................................................................................ 65
Funcionalidades ................................................................................................................................... 66
Conclusões ............................................................................................................... 77
Bibliografia:............................................................................................................... 78
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
3
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
1. Introdução
Com a realização deste relatório pretende-se fazer uma descrição o mais detalhada
possível do trabalho realizado pelos autores, no projecto final do curso da Licenciatura
em Engenharia Electrónica e Telecomunicações da Universidade de Aveiro durante o
ano lectivo de 2005/2006.
1.1. Contextualização do trabalho realizado
Da aliança das duas ciências que mais evoluíram nos últimos anos, a biologia
molecular e a informática, nasceu um novo campo do conhecimento: a Bioinformática.
Na realidade, devido a avanços da ciência, a principal ferramenta deste novo biólogo
deixou de ser o microscópio para passar a ser o computador o que gerou uma demanda
de aplicações informáticas capazes de satisfazerem as suas necessidades.
Na universidade de Aveiro, no laboratório de biologia molecular já se encontra em
funcionamento com uma base de dados que tem vindo a acumular dados de experiências
com relevante valor. No entanto, sem o auxílio de ferramentas informáticas que
possibilitem o estudo dos dados existentes não é possível uma plena valorização dos
mesmos.
Como a quantidade de dados gerados numa experiência biológica, neste caso de
microarrays, é enorme, não sendo possível de um modo empírico e simples fazer uma
análise válida tanto da qualidade de dados armazenados com análise de interpretação
dos mesmos, ou seja, os métodos tradicionais de análise não se adequam a tão grande
escala, deste modo, surge a necessidade de desenvolver ferramentas que permitam
efectuar análise de dados em colaboração com os sistemas desenvolvidos e em
desenvolvimento nesta academia.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
4
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
2.
Objectivos
O objectivo deste projecto é o de desenvolver uma aplicação Web, que em
colaboração com os sistemas existentes, e de acordo com um workflow pré-definido,
permita uma correcta exploração filtragem e análise de dados provenientes de
experiências biológicas.
Para o desenvolvimento deste projecto é necessário fazer uso das tecnologias de
desenvolvimento Web, de tecnologias de base de dados, assim como de ferramentas que
permitam geração de gráficos.
2.1. Actividades previstas
o Estudo da arquitectura do sistema actual assim como o enquadramento do
projecto (http://bioinformatics.ieeta.pt/mind);
o Definição do workflow assim como do conjunto de ferramentas a desenvolver;
o Desenvolvimento e teste das ferramentas de análise;
o Desenvolvimento de uma aplicação Web que faça uso do workflow definido e
que incorpore as ferramentas anteriormente desenvolvidas;
o Integração do sistema desenvolvido no conjunto de sistemas já existentes;
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
5
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
3.
Resumo
Este documento tem como objectivo documentar o trabalho realizado durante a
elaboração do “Projecto Exploração, filtragem e análise de dados laboratoriais” de
forma a criar a uma ferramenta interligada com o sistema já existente que permita o
controlo de qualidade e a análise de dados de uma experiência de microarrays.
O trabalho desenvolvido segundo os seguintes pontos:
I.
II.
Conceitos de Biologia Molecular e tecnologia Microarrays;
Controlo de Qualidade e Análise de Dados;
III.
Estudo do Sistema existente – Mind;
IV.
Levantamento ferramentas existentes úteis no desenvolvimento do projecto;
V.
GrafCreator – Sistema Independente para Controlo de Qualidade de
experiências de microarrays;
VI.
Mind – Interligação de ferramentas de Controlo de Qualidade e Análise de
Dados;
VII.
Conclusões.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
6
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
4.
Conceitos de Biologia e Tecnologia “Microarray”
4.1. Biologia Molecular
O universo biológico apresenta-se aos olhos de um biólogo com uma espantosa
diversidade, pois é constituído por plantas, animais e até criaturas microscópicas tais
como as bactérias. Mas observando mais atentamente no
fundo de toda esta biodiversidade existe uma poderosa
constância, pois todos os sistemas biológicos ao mais baixo
nível são compostos pelos mesmos tipos de moléculas
químicas [7] usando princípios similares de organização
celular.
As células são a unidade estrutural e funcional de todos Figura 1 – Cultura celular
os organismos vivos, sendo por vezes chamado “o bloco de construção da vida ”, a
estrutura de todas as células é muito semelhante, mas a organização das células é o que
distingue os seres vivos em dois grupos de organismos: eucariotas e procariotas.
As células procariotas são distinguidas das células
eucariotas
na
base
da
sua
organização
nuclear,
especialmente devido a ausência da sua membrana nuclear.
As procariotas também se caracterizam pela ausência da
maioria das organelas intercelulares e estruturas que são
características das células eucariotas (uma importante Figura 3 – célula procariota
excepção são os ribossomas que se encontram presentes tanto nas células procariotas
como nas eucariotas). As funções das organelas, tais como a mitocôndria, cloroplastas e
o aparato golgi, são substituídas pela membrana de plasma do procariota. A estrutura
das células procariotas encontra-se dividida em três regiões
arquitecturais: apêndices chamados flagella e pili que são
proteínas ligadas á superfície da célula, a envolvente da
célula que é constituída pela parede celular e a membrana de
plasma e uma ultima região que é a região citoplásmica que
Figura 2 – célula
contem o genóma da célula (DNA) os ribossomas e vários
tipos de inclusões. As células eucariotas são tipicamente 10 vezes maiores do que o
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
7
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
tamanho de uma célula típica procariota, mas podem chegar a ter 1000 vezes o volume
de uma célula procariota. A maior diferença entre os dois tipos de células consiste na
existência de compartimentos circundados por uma membrana nas eucariotas,
compartimentos estes onde ocorrem actividades metabólicas específicas. O mais
importante destes compartimentos é o núcleo celular, que é um compartimento
delimitado por uma membrana e que contem o DNA [7,8] da célula eucariota, este
núcleo e o que da o nome a célula pois eucariota quer dizer “núcleo verdadeiro”.
Figura 4 – Árvore da vida filogenética
As células procariotas dividem-se em dois subgrupos, as Archea e as Bactérias, por
sua vez as eucariotas formam um grupo único que é constituído
por todos os seres vivos restantes tais como todos os animais,
plantas e fungos.
Existem dois tipos de material genético o ADN (Ácido
Desoxirribonucleico) e o RNA (Ácido Ribonucleico), a maioria
dos organismos usam o ADN para armazenar a informação a
longo prazo, mas alguns vírus (exemplo: retrovirus) têm RNA
na sua informação genética. A informação biológica contida
num organismo é codificada nas suas sequencias de ADN ou
RNA. O RNA é também usado para transportar informação Figura 5-Primeiro esboço
de Francis Crick‘s do
(exemplo: mRNA) e para funções enzimáticas (exemplo: RNA padrão de dupla espiral do
ribosomal) em organismos que usam ADN para código ácido desoxirribonucleico
ADN
genético em si.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
8
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
De modo a ser descodificada toda a informação genética para perceber o
funcionamento de qualquer organismo é necessário compreender e estudar a sua
“Expressão Genética” [7,8].
4.1.1. O Ácido Desoxirribonucleico (ADN)
O ADN é um ácido nucleíco, usualmente na forma de uma dupla
espiral
que
contem
instruções
genéticas
especificando
o
desenvolvimento biológico de todas as formas de vida celulares e
alguns vírus. Este é um polímero de nucleótidos (um polinucleótido)
e codifica a sequência de resíduos de aminoácidos em proteínas
usando um código genético, um código de tripletos de nucleótidos.
Cada elipse é uma cadeia de nucleótidos ligados quimicamente, Figura 6– Estrutura geral
em que cada um deles consiste de um açúcar (desoxirribose) [7],
de uma secção de ADN
um fosfato e um de quatro tipos de bases. Porque as espirais de ADN são compostas por
estas subunidades de nucleótidos, elas são chamadas de polímeros. A existência de uma
diversidade de bases significa que existem quatro tipos de nucleótidos que normalmente
são referenciados pelo primeiro carácter do nome que identifica as suas bases são estes:
Adenina (A), Timina (T), Citosina (C) e a Guanina (G). A ordem ou sequência das
bases ao longo da cadeia do ADN é variável existe um efeito que se denomina de
“Complementaridade” [9], ou seja, cada Timina opõe-se sempre a uma Adenina e cada
Guanina opõe-se sempre a uma Citosina.
Figura 7 – Complementaridade de bases azotadas
Citando Watson e Crick na sua descrição do modelo de ADN, “O modelo de ADN
não é mais que uma longa sequência de nucleótidos, que estão emparelhados formando
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
9
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
uma longa cadeia dupla enrolada em espiral”. Ou seja, cada molécula de ADN enrola-se
em proteínas, formando estruturas chamadas cromossomas, em que cada porção
determinada de ADN forma um gene, sendo os genes considerados como unidades
indivisíveis dos cromossomas onde estão situados. Como unidade funcional do material
genético os genes são unidades fundamentais de hereditariedade, contêm o código para
a produção de proteínas, muitas das quais são enzimas químicas que possibilitam e
controlam as reacções químicas das células.
4.1.2. Síntese Proteica – o processo de formação de proteínas
O processo de produção de proteínas denominado de
síntese proteica ocorre em duas fases denominadas de
tradução e transcrição.
Durante o processo de transcrição [10] a hélice de ADN
desenrola-se e as suas cadeias separam-se com uma das
cadeias a servir de molde, produz-se uma molécula de
mRNA (RNA mensageiro) a partir dos nucleótidos livres,
existentes no nucleoplasma, os quais se ligarão á cadeia Figura 8– Esquema de transcrição
do ADN.
molde segundo o principio da complementaridade de
Legenda: X-ADN
Y-mRNA
bases. No RNA é que ter em atenção que não existe a
base azotada Timina, pois esta é substituída pela base Urucilo (U), ou seja a pentose de
RNA é a ribose
A cadeia de mRNA anteriormente formada, desloca-se do núcleo da célula para
Citoplasma da mesma, onde ocorre a tradução da informação genética.
O processo de Tradução [10] é um fenómeno que ocorre pela intervenção de um
organito celular, o ribossoma, que se ligará à cadeia de mRNA. Nesta cadeia, o conjunto
de três bases azotadas é conhecido como codão e este especifica um aminoácido. O
processo de tradução inicia-se pelo codão AUG (codão de iniciação), que traduz o
aminoácido metionina. Cada um dos codões do mRNA e os respectivos aminoácidos
são incapazes de se “reconhecerem” directamente havendo então necessidade de existir
um “adaptador” que faculte esse reconhecimento. A função de “adaptador” é efectuada
pelo tRNA (RNA de transferência), ou seja, o tRNA é uma ponte entre os aminoácidos
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
10
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
e o mRNA, para assim ser efectuada a tradução da informação codificada no mRNA em
proteína.
Quando é atingido um codão de terminação, o ribossoma solta-se e a cadeia de
aminoácidos é libertada, enrolando-se de modo a formar uma proteína completa, e o
gene assim e traduzido numa proteína.
4.1.3. Reacção em cadeia por polimerase (PCR – Polymerase chain
reaction)
A técnica PCR é uma técnica muito utilizada em investigação medica e biológica para
uma variedade de funções, tais como a detecção de doenças hereditárias, identificação
de impressões digitais genéticas, no diagnostico de doenças infecciosas, na clonagem de
genes, testes de paternidade e computação de ADN e microarrays.
A PCR é uma técnica da biologia molecular inventada por Kary B. Mullis, para
replicar ADN enzimaticamente sem usar um organismo vivo, tais como E. coli. Esta
técnica
permite
que
uma
pequena
quantidade
de
ADN
seja
amplificada
exponencialmente, todavia devido ao facto de ser uma técnica in vitro ela pode ser
efectuada sem restrições na forma do ADN e pode ser extensivamente modificada de
modo a fornecer uma grande quantidade de manipulações genéticas.
Para ser executada a técnica PCR é necessário um conhecimento prévio da sequência
do ácido nucleico que se deseja amplificar, ou seja ter-se conhecimento da sequência
alvo. Partindo da sequência alvo, são desenhados dois iniciadores, também
denominados de “primers” para se dar inicio ao processo numa área específica da
sequência. O “primer” é uma pequena sequência de nucleotídos que híbrida no início de
uma sequência alvo que se quer amplificar e da qual é complementar. Ao identificar o
“primer” a polimerase sintetiza uma cópia complementar, respeitando a informação
contida na sequência de ADN a ser sintetizado esta técnica precisa ainda de
deoxinucleosideos trifosfatados (dATP, dTTP, dGTP, dCTP) que são quatro
componentes químicos que actuam como tijolos na construção da molécula de ADN.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
11
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
4.2. Tecnologia “Microarray”
A tecnologia de microarrays é uma tecnologia muito recente e actualmente apresentase como uma das tecnologias com maior potencial na produção de problemas e soluções
para a Biologia no ramo da Genómica, tendo como grande vantagem um grande ritmo
de obtenção de dados experimentais. A tecnologia utiliza arrays microscópicos
(microarrays) de moléculas imobilizadas em superfícies sólidas para análise bioquímica,
actualmente os microarrays podem ser usados para distintos tipos de análise como por
exemplo “análise de expressão genética, detecção de polimorfismos, re-sequenciação
genética, genotipagem e escalagem genómica ” [1].
As técnicas habitualmente utilizadas para construir, analisar e processar dados são a
fotolitografia, ‘micro-spotting’ e impressão por jacto (tecnologia semelhante á utilizada
nas impressoras de jacto de tinta), combinadas com técnicas sofisticadas de detecção
por fluorescência, sendo a análise estatística e a bioinformática (elementos chave devido
à quantidade de informação produzida).
4.2.1. Como se fabrica e como funciona um Microarray
Na actualidade existem várias técnicas, para a realização de microarrays sendo elas:
- Ilumina bead array (www.illumina.com);
- Serial Analisys of Gene Expression (www.sagenet.org);
- Nylon Membrane (www.schleicher-schuell.com);
- Agilent: Long oligo Ink Jet (www.home.agilent.com)
- GeneChip Affymetrix (www.affymetrix.com)
- cDNA microarrays;
- Microarrays de proteínas e Oligo Microarrays;
Apesar da existência de arrays de expressão genética em variados formatos, são
usados com mais regularidade duas categorias, os microarrays de cDNA compostos por
cDNA ou oligonucletotidos e também arrays de grande densidade produzidos
comercialmente que contêm oligonucleotidos sintetizados [2]. O princípio pelo qual
todos os arrays se regem é o da capacidade de uma sequência presa de nucleótidos se
colar ou hibridar há sua sequência complementar e formar uma sequência dupla de
ADN.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
12
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
4.2.2. Microarrays – o princípio de funcionamento
Preparação das células
Tratada
Cultura de células
Controlo
Centrifugação
Extracção de mRNA
Visualização do array
cDNA
Braço robótico
Marcação
do cDNA
Misturar o cDNA
marcado
Hibridação
Impressão do array
Figura 9 – Esquema exemplificando a análise de expressão genética usando tecnologia de
microarrays (“spoted microarrays”)
Observando a (Figura 9), verifica-se que a produção de um microarray naquele caso
específico é a seguinte, após colhidas as células do elemento que pretendemos analisar,
são criadas culturas de células Normais/Controlos e Tratadas/células anormais (com
alguma mutação) essas células em seguida serão transferidas para tubos de
centrifugação. Então o RNA mensageiro mRNA de cada tipo de célula é usado para
gerar cDNA marcado com um marcador fluorescente. O mRNA de cada tipo de célula é
marcado com um diferente tipo de fluoroforo de modo a poder haver comparação. Os
dois cDNA são então misturados e hibridados com um microarray de DNA preparado
com métodos de spotting (ex. micro-spotting robótico ou jacto de tinta). No final os
níveis de expressão genética são monitorizados através da medição da intensidade de
luz usando ferramentas de visualização e programas computacionais.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
13
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
Em maior detalhe, uma experiência com uma array de cDNA tem cinco passos
básicos:
o O cDNA é impresso num substrato sólido como por exemplo vidro ou
plástico;
o A amostra de RNA é isolada;
o O cDNA é sintetizado e marcado para posterior detecção
o A sonda de cDNA é hibridada de modo a aderir ao cDNA no substrato, ou
seja, quando uma amostra de DNA ou RNA é aplicada array qualquer
sequência na amostra que encontre um o seu complementar irá ligar-se a um
determinado spot do array;
o Finalmente os resultados da hibridação são transformados numa imagem e
analisados produzindo um ficheiro com as intensidades de luz dos spots
quando expostos a determinados comprimentos de onda;
4.2.3. Construção do microarray
Como já referido anteriormente, apesar de várias técnicas para construção de
microarrays existirem na actualidade, têm-se destacado especialmente duas.
No método mais utilizado estes são construídos agregando fisicamente fragmentos de
DNA tais como uma livraria de clones ou reacção em cadeia por polymerase PCR
(polymerase chain reaction). Ao usar um construtor de arrays robótico (Figura 10) e o
princípio da capilaridade podem ser impressos arrays com tamanho até 23000
fragmentos de genes impressos numa lamela de microscópio.
Figura 10 – Spoter robótico, para impressão de microarrays
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
14
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
No outro método os arrays são construídos sintetizando uma camada única de
oligonucleotidos in situ esta técnica usa técnicas de litografia [4] (Figura 11) esta
técnica tem vantagens relativamente hás anteriormente apresentadas em que facilmente
e de uma forma económica e flexível se construía um microarray com grande densidade,
no caso da técnica de litografia a densidade é superior (>280000/ 1.28x1.28cm) [3] e
elimina a necessidade de recolher e armazenar o DNA clonado ou os produtos
resultantes da PCR (polymerase chain reaction).
Figura 11 – Spoter litográfico para impressão de microarrays;
No caso de microarrays personalizados, que são muito comuns nos laboratórios de
genómica, são construídos seleccionando os genes a serem impressos de bases de dados
públicas (repositórios públicos) ou fontes institucionais, obtendo-se assim um desenho
de um microarray adequado ao processo experimental em causa. Existem até empresas
que efectuam a produção e desenho de experiências de microarrays como é o caso da
Agilent Technologies (http://www.chem.agilent.com/).
A preparação para a impressão de chips de cDNA de grande densidade é apoiada
normalmente em sistemas robóticos que cumprem o processo de produção de milhares
de reacções PCR necessárias a elaboração dos microarrays. Após obtidos os produtos
das reacções, estes são depositados em spots para um chip por um robot, que deposita
aproximadamente um nano-litro de produto PCR para uma matriz numa ordem definida
pelo design do mesmo array. A aderência do DNA ao slide é melhorada através de um
tratamento com “polylysine” ou outras camadas químicas de químicos de “crosslinking”.
4.2.4. Desafios para a tecnologia “ Microarray ”
No seu estado inicial, a tecnologia Microarray era limitada a empresas de
biotecnologia com grandes recursos orçamentais. Mas com o passar do tempo a
tecnologia começou a amadurecer, e esta começou a tornar-se mais acessível a
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
15
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
laboratórios académicos e a utilizadores comerciais, este processo tornou possível a
instituições como a Universidade de Aveiro, e centros tecnológicos como BioCant a
utilização de tal tecnologia para investigação em áreas de genómica e sequenciação.
Contudo a tecnologia ainda tem as suas limitações [3], como a sua dificuldade técnica,
especificidade e fiabilidade. O sucesso da tecnologia de microarrays gera também
situações adversas que têm de ser resolvidas, acabando por gerar também desafios
estruturantes a diferentes ramos de investigação, como a Bioinformática e a Estatística.
Neste momento ainda não existem processos perfeitos de gestão e manuseamento de
grandes quantidades conjuntos de dados complexos, pois o grande desafio neste
momento não aparenta ser o modelo de produção de arrays, mas sim a manipulação e
análise das matrizes de dados, sendo outro dos grandes problemas a ausência de um
protocolo estandardizado para manuseamento de dados, embora este problema caminhe
a passos largos para a sua resolução com a criação de grupos de trabalho como o MGED
(Microarray Gene Expression Data Society - MGED Society) que procuram criar um
processo de uniformização de manipulação e armazenamento de dados de expressão
genética.
4.2.5. Desafios para a Bioinformática
Os desafios que mais directamente se apresentam á Bioinformática neste momento são
criar bibliotecas com anotações sobre os genes mais relevantes, de modo a facilitar a
análise de estatística, através de clustering, etc. Ou seja os desafios futuros consistem de
base de dados e algoritmos para análise de grandes quantidades de dados e métodos de
visualização [5]. Sendo que os cientistas do Instituto Europeu de Bioinformática
identificaram como tendência e caminho a seguir a criação de serviços presentes na
“World Wide Web”, que cumpram os standards criados pelo MGED e forneçam dados
em um ficheiro baseado em XML [6].
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
16
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
5.
Controlo de qualidade e análise de dados
5.1. Fases do ciclo experimental biológico
As experiências biológicas neste caso de microarrays são divididas em vários estágios
fundamentais para obtenção de resultados como se pode observar pelo diagrama
funcional apresentado na figura seguinte.
Questão Biológica
Design Experimental
Falhou
Experiência Microarrays
Controlo de
Qualidade
Análise da Imagem
Passou
Normalização
Pré-processamento
Análise
Estimação
Teste
Clustering
Descriminação
Verificação Biológica e interpretação
Figura 12 – Ciclo de vida experimental de uma experiência biológica [11]
O processo aparentemente, é muito linear e simples, pois após surgir uma questão
biológica, parte-se para o desenho experimental e para a experiência de microarrays,
mas a partir deste momento começam a surgir os desafios tanto em termos biológicos,
estatísticos e informáticos. Na fase de pré-processamento surge uma questão
fundamental em qualquer procedimento experimental que é o da qualidade dos dados
gerados pela mesma, devido a esses problemas surge a necessidade de implementar uma
metodologia que permita estabelecer parâmetros de filtragem dos dados.
Após a fase do controlo de qualidade terão que existir procedimentos de normalização
de dados de modo a tornar possível a eliminação ou pelo menos reduzir o efeito das
fontes de ruído presentes em qualquer experiência, só após o cumprimento destes passos
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
17
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
se torna possível partir para uma a Análise experimental onde serão implementadas
diversas técnicas, sendo escolhidas pelo investigador as que se apresentam como mais
indicadas para a sua experiência. Cumprida esta fase poderá então o biólogo debruçar-se
sobre a verificação biologia e interpretação dos resultados correndo o risco de o
processo se ter que repetir sistematicamente até que seja respondida a questão biológica
em causa.
Olhando para o ciclo de vida biológico do ponto de vista de um informático, a
necessidade de intervenção deste aparenta ser reduzida mas esse ponto é uma aparente
ilusão pois este irá ter que intervir nos processos de controlo de qualidade e
normalização e análise, através do desenvolvimento de aplicações que permitam a
realização de uma forma sistemática e simples por forma a acelerar o processo
experimental.
5.2. Controlo de qualidade
O controlo de qualidade surge com questão pertinente, pois é necessário ter a
capacidade de diferenciar os bons dos maus dados.
No caso dos microarrays isto deve-se a quatro questões fundamentais [11]:
o Dados de expressão genética em microarrays têm uma grande gama dinâmica
(exemplo: [100...104]) figura ;
o Existem múltiplas fontes de ruído: Correlacionadas, Sistemáticas e
dependentes de factores experimentais;
o Não existem unidades absolutas, apenas relativas, pois a calibração é em tudo
diferente de array para array e muito diferente para diferentes setup’s
experimentais;
o Grande variação espacial e temporal.
Figura 13 – Exemplo da variação de gama dinâmica de dados de microarrays
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
18
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
5.2.1. Técnicas para redução de efeitos indesejados (fontes de
ruído)
As fontes de ruído mais comuns numa experiência de microarrays são :
Contaminação de amostras;
o Degradação do RNA;
o Eficiência da Amplificação;
o Eficiência da transcrição reversa;
o Eficiência e especificidade da Hibridação;
o Eficiência de Spotting;
o Quantificação do sinal;
o Segmentação da Imagem;
o Outros problemas relacionados com o fabrico dos arrays.
Para reduzir a influência de tais fontes de ruído usualmente são utilizadas métodos de
correcção de background (ajuste de sinal) e normalização.
As técnicas de correcção de background têm entre outras funções, a importância de
corrigir o ruído de background e efeitos de processamento dos arrays, como falhas de
circularidade (Figura 14) nos spots, e nuvens de ruído biológico (Figura 15) resultantes
de falhas no processo laboratorial, como por exemplo uma má eliminação de materiais
residuais durante a lavagem do microarray.
a)
b)
Figura 15 – Exemplo de spot’s:
a) Estado ideal
b) Estado experimental
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
Figura 14 – exemplo de array
com mau background
19
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
De uma forma muito resumida a função da correcção de background é ajustar as
ligações não específicas e ajustar os valores de expressão de modo a estarem dentro de
uma gama apropriada.
A outra técnica de correcção de redução da influência das fontes de ruído nos dados
experimentais é a normalização pois “Factores não biológicos podem contribuir para a
variabilidade dos dados…De modo a poder comparar dados de múltiplos arrays as
diferenças de origem não biológica devem ser minimizadas”1.
A razão fundamental para a utilização de tal técnica é a existência de factores
experimentais que têm efeitos sistemáticos e não conseguem ser controlados com a
tecnologia existente e prática laboratorial, pois embora a experiência possa ser realizada
pelo mesmo investigador os resultados podem ser diferentes em diferentes execuções do
mesmo protocolo experimental.
Em suma a normalização vai reduzir a variação indesejada tanto dentro como entre
arrays, podendo ser usada a informação de vários arrays em simultâneo.
5.2.2. Métodos usados para correcção de background e
normalização
Os métodos mais usados para a correcção de background são [13]:
o Subtract;
o Norm Exp;
o Moving Gmin.
Embora existam muitos outros. O método “Subtract” é recomendado para situações
em que é pretendida uma análise simples dos dados, o que é efectuado por esta técnica é
uma subtracção simples dos valores de foreground aos valores de background. Quanto
ao método Norm Exp, é preferível quando é necessária uma análise de expressão
diferencial, pois o que este método realiza é um ajuste da adaptabilidade do foreground
para as intensidades de background, resultando disso apenas valores positivos e
ajustados da intensidade, i.e., são evitados resultados nulos ou negativos de intensidade.
O método Moving Gmin, o background estimado é substituído pelo background
mínimo dos spots vizinhos, i. e., o background é substituido através da movimentação
de uma matriz 3X3 á volta de cada spot determinando o mínimo valor da vizinhança.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
20
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
Relativamente aos métodos de normalização os mais comuns são [14]:
o Loess;
o Printip Loess;
O método de Loess [14], normaliza as intensidades do canal cy3 ou cy5 de todos os
spots aplicando o algoritmo LOESS ajustando tanto a intensidade cy3 ou cy5 de cada
spot com factores Loess determinados pelo algoritmo, neste caso o algoritmo é aplicado
a todos os dados do microarray, relativamente ao método PrinttipLoess, o método é
exactamente igual ao aplicado no método anterior, com uma diferença relativamente aos
dados usados para a aplicação do algoritmo, sendo neste caso aplicados a um printip do
array como exemplificado na Figura 20.
PRINTTIP 1
PRINTTIP 2
Figura 16 – Exemplo de array e seus printtips
5.3. Análise de dados experimentais
A grande maioria das experiências de microarrays são de uma natureza comparativa
[9], ou seja pretende-se quase sempre perceber relações entre elementos do mesmo
grupo ou grupos distintos de forma a obter resultados úteis.
Posto isto, é simples perceber que na grande maioria das experiências é pretendido
comparar níveis de expressão de um grupo de genes segundo duas ou mais condições,
ou seja, identificar genes que sejam significativamente diferencialmente expressos
perante as condições.
Um exemplo em que é pretendido este tipo de análise é o caso de uma experiência que
pode ser conduzida para comparar vários níveis de expressão de vários genes em células
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
21
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
cancerígenas do fígado versus uma situação de células normais numa tentativa de
identificar os genes mais expressos em células cancerígenas do fígado mas não em
células normais.
A forma mais simples de analisar experiências comparativas [9] é considerar cada
gene de uma forma isolada e comparar o seu nível de expressão cruzando os seus
valores de expressão com os pertencentes às outras condições. Quando se quiser fazer
uma análise a um nível mais elevado de complexidade, os genes podem ser analisados
em combinação, comparando os níveis de expressão dos clusters de genes através dos
grupos.
Para isso são identificados por Dahmmika Amaratunga e Javier Cabrera [9] como
processos estatísticos a seguir:
o Calculo de FOLD Changes;
o T-test;
o Robust t-test
o SAM;
o Entre outros.
5.4. Análise baseada em modelos e considerações sobre o design
experimental
Durante os últimos anos têm trabalhado na aplicação de técnicas estatísticas de
modelos lineares diversos grupos de investigadores tentando aplicar os mesmos
modelos para a análise comparativa de microarrays, tendo este tipo de modelo de
análise obrigado a uma reflexão sobre a importância do design experimental ideal para a
análise de uma determinada experiência de microarrays.
A literatura sobre estes tópicos tem vindo a aumentar gradualmente [9] existindo um
grupo de autores a considerar segundo Dhammika Amaratunga e Javier Cabrera.
Numa fase inicial Kerr e Churchil (2001) e Kerr et al. (2000,2002) são referências
para técnicas usadas para a análise de dados de microarrays de cDNA com multicanais,
estes também defenderam a existência e a importância do design da experiência, tendo
proposto vários métodos de design inovadores.
Numa fase mais avançada surgem Churchill (2002) e Yang e Speed (2002), com
revisões do trabalho realizado pelos autores apresentados no paragrafo anterior.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
22
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
Yang e Speed são elementos integrantes do grupo de investigação que desenvolveu a
package R LIMMA (Linear Models for Microarray Data) tendo esta package servido de
base a todo o trabalho realizado neste projecto.
Como já referido no ponto anterior um elevado número de experiências são
analisadas segundo um modelo de comparação.
O design de tais experiências refere-se á atribuição de várias amostras a diferentes
factores ou condições, no caso das experiências de microarrays a variável de interesse é
o nível de expressão genética e o design experimental faz referência a atribuição das
amostras sobre o nível de factores tais como a variedade ou “dye” (replica invertida de
um microarray, se no array M1, o canal R tem amostra Y e G amostra X então array M2
canal R tem amostra X e canal G tem amostra Y), e ainda replicas biológicas.
Como exemplos de design temos:
o Design com amostra de referência (tabela 1);
o Design em Loop (tabela 2);
o Design Saturado (tabela 3);
o Design em Loop com referência;
Array
Array
Array
A1
A2
A3
Canal R
REF
REF
REF
Canal G
A
B
C
Design D1
A
A1
REF
A2
B
A3
C
Tabela 1 – Tabela de Design do tipo amostra de referência, e respectivo diagrama de grafos;
Array
Array
Array
A1
A2
A3
Canal R
A
B
C
Canal G
B
C
A
Design D2
B
A1
A
A2
A3
C
Tabela 2 – Tabela de Design do tipo LOOP, e respectivo diagrama de grafos;
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
23
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
Array
Array
Array
Array
Array
Array
A1
A2
A3
A4
A5
A6
Canal R
A
B
C
B
C
A
Canal G
B
C
A
A
B
C
Design D1
Tabela 3 – Tabela de design do tipo Saturado, e respectivo
diagrama de grafos
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
A4
A
B
A1
A5
A3
A2
A6
C
24
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
6. Sistema de Gestão de Informação Laboratorial (LIMS) da
Universidade de Aveiro, MIND – Microarray Information
Database
Neste capítulo é pretendido efectuar uma pequena e resumida explicação sobre o
sistema LIMS actualmente em funcionamento na Universidade de Aveiro – Mind, cuja
arquitectura e dados serão a base deste projecto.
6.1. O que é um LIMS?
Os sistemas LIMS são um conceito relativamente recente, datado da década de 60,
tendo surgido no momento do inicial do surgimento de tecnologias de informação, no
início do “boom” da informática. Cerca de 20 anos mais tarde, com os custos da
tecnologia a diminuírem e a qualidade dos sistemas de informação a aumentar, esta
deixou de ser apenas uma potencial ferramenta que poderia ter influências na qualidade
da investigação e no funcionamento das organizações para passar a ser um motor de
desenvolvimento das mesmas, aumentado a produtividade e competitividade reduzindo
custos operacionais e aumentando a capacidade decisória das organizações.
Paralelamente há evolução das tecnologias de informação também existiu evolução
noutras áreas como a Biologia, Bioquímica, etc… e as quantidades de dados
provenientes começou a ser incomportável de gerir com os métodos tradicionais então
surgiram os sistemas LIMS [15], que eram versáteis e simples e permitiam sistematizar
o trabalho do investigador de uma forma impar.
As funções principais dos sistemas LIMS são gerir toda a informação necessária a um
laboratório (protocolos, experiências e dados), de forma a permitir um fácil acesso e
manuseamento da informação e partilha da mesma, sendo esta consequência da
estruturação dos dados na actualidade estar regulada por entidades que procuram
uniformizar o formato de dados como o grupo MIAME/MGED.
6.2. O que é o Mind?
O Mind é o sistema LIMS da Universidade de Aveiro, este tem vindo a ser
desenvolvido nos últimos dois anos, tendo dado origem a duas versões de
implementação.
O desenvolvimento foi elaborado segundo um procedimento interdisciplinar em que
foi necessário que os elementos que iriam projectar o mesmo se sentassem a mesa com
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
25
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
os biólogos e bioquímicos futuros utilizadores do sistema, de forma a ser atingido um
consenso quanto ao workflow e dados a processar, durante o processo foi evidente que
seria necessário que o sistema MIND teria que cumprir as normas MGED, de modo a
que fosse possível existir um modelo universal de partilha de dados entre laboratórios
[16].
6.3. O que é um LIMS? Normas e Ontologias na base do sistema MIND
A arquitectura da base de dados e do workflow foi baseado nas normas produzidas
pelo grupo MGED, como já foi referido este grupo procura produzir normalização e
recomendações de modo a que todos os sistemas informáticos LIMS possuam um
padrão mínimo de informação sobre as experiências de Microarrays de modo a facilitar
a partilha de informação e criação de sistema de análise de dados.
O MIAME é uma recomendação produzida pelo grupo MGED para um padrão de
representação de dados associados às experiências com microarrays, assim como
ontologias e protocolos, sendo um grupo multidisciplinar composto por Biólogos,
Estatísticos e Informáticos.
A recomendação MIAME divide-se em seis áreas diferentes de recomendação [19] :
o Design experimental: procura descrever a Experiência como um bloco;
o Design do Array: Descreve cada Array e cada spot em cada Array;
o Amostras: Descreve as amostras usadas e correspondente preparação e
marcação;
o Hibridação: Descreve todos os procedimentos efectuados para a realização da
experiência;
o Medições: Descreve imagens, especificações e quantificações efectuadas
durante o procedimento normal do procedimento experimental;
o Controlos de Normalização: Processo de normalização dos dados obtidos.
Por sua vez a norma que orienta a implementação dos conceitos introduzidos pelo
MIAME é a norma MAGE ( Microarray Gene Expression), esta norma é dividida em
dois grupos de especificações MAGE-OM (MAGE- Object Model)e MAGEML(MAGE- Markup Language).
De uma forma muito simplificada a normalização que definiu a totalidade do formato
da estrutura de dados do MIND é comandado pelas normas MAGE apresentadas no
parágrafo anterior em que o MAGE define os requesitos dos dados a armazenar, o
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
26
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
MAGE-OM define a estrutura de objectos da informação a guardar e o MAGE-ML
define a forma como partilhar e como partilhar os dados da base de dados.
6.4. Arquitectura do MIND
Submitter
BioAssayData
Experiment
BioAssay
Image
Lab. Extract
Array
Protocol
ArrayBatch
ArrayDesign
Mandatory relationships
for introducing new data
Extract
Mandatory relationships
for completing the
experiment
BioSample
Treatment
BioMaterial
Figura 17– Arquitectura Top-bottom do Mind V2 [19]
Como é exemplificado na figura 18, a arquitectura do sistema de informação MIND
cumpriu as especificações das normas MAGE e por consequência as recomendações
MIAME, como se observa facilmente existem seis grupos distintos mas relacionados,
sendo eles:
o Design – descrito pelos blocos Experiment e Protocol;
o Design do Array – descrito pelos blocos Array Design e Array Batch;
o Amostras – descrito pelos blocos Lab.Extract, Extract, Biosample e
Biomaterial;
o Hibridação – descrito pelo bloco Bioassay;
o Medições – descrito pelo bloco Bioassay Data;
Embora a interpretação da estrutura de dados não possa ser feita de uma forma tão
simplista pois esta possui informação a um nível mais complexo, contendo o máximo de
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
27
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
informação possível de forma a uma maior qualidade dos dados armazenados, ou seja,
possui mais informação do que a recomendada pelo MAGE.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
28
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
7. Levantamento de Packages em R, Identificação de
ferramentas e funcionalidades para análise de dados de
experiências de Microarrays
7.1. Identificação e Levantamento de packages R, ferramentas Web e
pacotes comerciais
O levantamento efectuado restringiu-se há identificação de três tipos de produtos
existentes no mercado, packages R, ferramentas Web e pacotes comerciais,
pretendendo-se identificar quais as funcionalidades oferecidas, custos no caso de
pacotes comerciais, tipos de licença no caso de packages R sendo a informação limitada
aos dados fornecidos pelos proprietários dos produtos em causa.
A metodologia de identificação utilizada partiu da exploração de sítios de referência,
que disponibilizam análises e identificam vários produtos desenvolvidos e em
desenvolvimento.
O sítio mais utilizado foi o Bioconductor que se encontra no endereço
(www.bioconductor.org), este tem como missão dos projectos os seguintes pontos:
Fornecer acesso a uma grande quantidade de ferramentas estatísticas e métodos
gráficos para análise de dados genómicos;
Facilitar a integração de metadados biológicos na análise de dados experimentais: exp.
Literatura da PubMed, dados de anotações da LocusLink;
Permitir um rápido desenvolvimento de software extensível, escalável e inter-operativo;
Promover documentação de grande qualidade e investigação reproduzível;
Fornecer treino em métodos estatísticos e computacionais para a análise de dados de
Genómica.
Outra metodologia, foi a utilização de motores de busca como Google and Altavista,
tentando identificar projectos em desenvolvimento por vários grupos de bioinformática
de várias instituições, tentou-se também observar grupos de discussão ligados a
utilizadores de R o que nos iria efectivamente fazer perceber o que esta a ser usado por
vários investigadores da área.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
29
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
Neste capítulo vai ser feita uma descrição generalista e concisa das listas de packages,
serviços web e pacotes comerciais seguintes seguintes:
Packages para R:
Tipo de Aplicação
Package R
Excel add-ins
Package R
Produto
Instituto/Organização
Notas:
SAM
Stanford University
7.1.1.
SMA
Berkeley University
(Speed Berkeley Research Group)
7.1.2.
Ludwig-Maximilians-Universitat
Package R
GeneTS
Munchen
7.1.3.
(Departamento de Estatística)
The Walter and Eliza Hall Institute
Package R
Limma
of Medical Research
Melbourne, Australia
7.1.4.
London University
Package R
Yasma
(The Intracellular Pathogen
7.1.5.
Cooperative Group)
Aplicações WEB:
Tipo de
Produto
Instituto/Organização
Notas:
BIOCONDUCTOR
(Vários)
7.1.6.
Aplicação
Base de dados
de packages de
Principal: Unidade de
R para Genética
Bioestatistica do Instituto
Médico de Harvard
Web page
SNOMAD
Jonhns Hopkins School of
7.1.7.
Public Health
Web page
CAP-WEB
Curie institut
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
7.1.8.
30
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
Pacotes Comerciais:
Tipo de
Produto
Instituto/Organização
Notas:
Custo:
GeneSpring gx 7.3
Agilent Technologies
7.1.9
Inf.não
Aplicação
Desktop
application
Desktop
fornecida
GeneSight v4.1
Biodiscovery, Inc
7.1.10
Application
Desktop
fornecida
J-Express Pro 2.7
MolMine
7.1.11
Application
Desktop
Application
Inf.não
fornecida
Rosetta Resolver
Rosetta Biosoftware
7.1.12
Application
Desktop
Inf.não
Inf.não
fornecida
Spotfire
Spofire.inc
7.1.13
Inf.não
fornecida
DecisionSite System
v8.2
Desktop
S+ArrayAnalyzer®
Insightful Corporation
Application
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
7.1.14
Inf.não
fornecida
31
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
7.1.1. SAM (Significance Analysis of Microarrays) versão 2.2.0
URL: http://www-stat.stanford.edu/~tibs/SAM/
Licença: freeware para uso académico;
Funcionalidades:
Excel Add-in;
Pode ser aplicado a dados de arrays Oligo ou cDNA, SNP, Proteínas, etc...;
Correlaciona a expressão de dados para parâmetros clínicos incluindo tratamento,
categorias de diagnostico, tempo de sobrevivência, emparelhado (antes e depois),
quantitativa (ex. Volume de tumor) e uma classe. Tanto testes paramétricos e não
paramétricos são oferecidos;
Correlaciona os dados expressos com o tempo, para estudar tendências temporais. As
unidades experimentais podem cair em uma ou duas classes, ou ser emparelhadas;
Imputação automática de dados em falta via algoritmo do vizinho mais próximo;
Ponto inicial ajustável determina o número de genes chamados significativos;
Usa permutação de dados para fornecer uma estimativa da taxa de descoberta falsa
para teste múltiplo;
Reporta taxas de descoberta falsa e taxas de falhas locais;
Pode lidar com designs bloqueados, por exemplo, quando os tratamentos são
aplicados dentro de diferentes séries de arrays;
Descoberta de padrões via “eigengenes”;
Desenvolvido por:
Stanford University Statistics and Biochemistry Labs.
Based
on
paper
of
Tusher,
Tibshirani
and
Chu
(2001)
"Significance analysis of microarrays applied to the ionizing radiation response".
PNAS, Apr 24, 2001
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
32
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
7.1.2. SMA (Statistics for Microarray Analysis) versão 0.5.13
(2003/08/15)
URL: http://www.stat.berkeley.edu/users/terry/zarray/Software/smacode.html
Licença: GPL version 2;
Funcionalidades:
Permite uma análise de dados de microarrays de cDNA implementando:
- Técnicas de normalização de dados;
- Vários métodos estatísticos para identificação de genes expressos em experiências
replicadas de cDNA;
- Varias técnicas de clustering;
Desenvolvido por:
Speed Berkeley Research Group
Departamento de Estatística da Universidade da Califórnia, Berkeley
7.1.3. GeneTS (Gene Transcription) versão 2.8.0 (2005/08/15)
URL: http://www.statistik.lmu.de/~strimmer/software/genets/
Licença: GPL version 2;
Funcionalidades:
Este package permite uma análise de dados da expressão de genes (time series).
Actualmente este package permite dois tipos de análise:
- Identificação de genes periódicos;
- Interferência de redes de associação em larga escala de genes;
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
33
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
Este fornece também estruturas de dados e funções para dados longitudinais com
múltiplas variáveis, medidas repetidas, e pontos de tempo irregularmente espaçados;
Desenvolvido por:
Miika
Ahdesmaki
<[email protected]>,
Konstantinos
Fokianos
<[email protected]>, Juliane Schaefer <[email protected]>, Korbinian
Strimmer <[email protected]>.
7.1.4. LIMMA (Linear Models for Microarray Data) versão 2.4.7
(2006/01/03)
URL: http://bioinf.wehi.edu.au/limma
Licença: LGPL
Funcionalidades:
O Limma é um package que permite efectuar a análise da expressão genética em
dados de microarrays, especialmente o uso de modelos lineares para experiências
desenhadas e para avaliação da expressão diferencial. A mesma fornece a capacidade de
comparação e análise entre múltiplos alvos em simultâneo e possui também
funcionalidades que tornam as análises estáveis mesmo para experiências com um
número muito baixo de arrays, isto é obtido através da partilha de informação entre
genes. As funções de normalização e de análise exploratória de são concebidas para
microarrays a duas cores. O modelo linear e as expressões diferenciais podem ser
aplicadas a todos dados gerados por scanners de microarrays incluindo Affymetrics e
outros microarrays de um só canal.
Passando a enumerar a funcionalidades deste package:
o Leitura de dados de experiências a duas cores;
o Exploração de dados;
o Pré-processamento de dados de experiências a duas cores:
o Correcção de Background;
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
34
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
o Normalização dentro do array;
o Normalização entre arrays;
o Modelos Lineares;
o Desenhos específicos:
o Comparações simples:
o Replicar arrays;
o Dey swaps;
o Replicação técnica;
o Dois Grupos (referencias comuns e Affymetrix);
o Vários grupos;
o Curso de tempo de experiências;
o Análise para canal separado de dados de experiências de microarrays a duas
cores;
o Estatísticas para expressão diferencial.
Desenvolvido por:
The Walter and Eliza Hall Institute of Medical Research
Melbourne, Austrália
7.1.5. YASMA (Yet Another Statistical Microarray Analysis) v 0.20
URL: http://people.cryst.bbk.ac.uk/~wernisch/yasma.html
Licença: GPL version 2;
Funcionalidades:
O Yasma é uma biblioteca add-on para R, que pode ser usada para analisar
experiências replicadas simples. A intenção desta biblioteca é complementar a package
referida anteriormente SMA (Significance Analysis of Microarrays).
Esta biblioteca oferece uma análise estatística do tipo ANOVA, e análise de
componentes de variância, sendo válida esta metodologia desde que por exemplo, no
caso de experiências com múltiplos preparados de mRNA hibridados em vários arrays,
seja usado o mesmo número de arrays para cada preparado.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
35
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
No momento em que esta análise está a ser realizada a package Yasma contem as
seguintes funcionalidades:
o Rotinas para encontrar relação entre réplicas de arrays e remover os genes que
possuem menor expressão causa de baixa correlação;
o Um método para interpolar dados em falta usando estimativas de uma análise
ANOVA;
o Rotinas para uma análise “fast ANOVA” de dados típicos de uma experiência
com microarrays.
o Rotinas para uma análise de variância de componentes: culturas, arrays, etc...
o Rotina para cálculo do desenho óptimo de uma experiência baseado nos custos
relativos de culturas, arrays, etc...
o Calculo de P-values obtidos através da análise de componentes de variância.
Se os resíduos mostram diferentes valores de variância (caso comum)
“hierarchical bootstrapping” dos resíduos é o método mais viável de obter os
p-values.
o Implementa testes adicionais “standard” (“t-statistic”), de Newton’s e métodos
de modelo hierárquico para experiências múltiplas.
Desenvolvido por:
The Intracellular Pathogen Cooperative Group, London University
7.1.6. BIOCONDUCTOR
URL: http://www.bioconductor.org/
Licença: Open source software
Funcionalidades:
O “Bioconductor” funciona como um projecto de desenvolvimento de software open
source e de desenvolvimento livre para a análise e compreensão de dados de
experiências genéticas.
Num estádio inicial do grupo os esforços dirigiram-se essencialmente para a análise
de dados de microarrays de DNA, mas neste instante muitas das ferramentas de análise
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
36
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
são generalistas e podem ser usadas de um modo alargado para a análise de dados
genéticos.
A programação do “Bioconductor” é baseada na linguagem de programação R.
Como ferramentas presentes interessantes temos as que se encontram incluídas na
base de dados:
o LIMMA (já referida no ponto 1.4);
o arrayMAGIC (efectua: preprocessamento e controlo de qualidade para arrays
de cDNA de duas cores);
o geneRecommender (efectua: algoritmos de clustering localizados para a
análise de dados de microarrays);
o GeneMeta (efectua: esta centrado na combinação de data sets baseados na
comparação de duas amostras, os procedimentos são largamente baseados no
t-test);
o Convert (efectua: a conversão entre classes de dados de microarrays, ou seja
pode converter os formatos dos dados entre as packages limma, Biobase e
marray);
o Ebarrays (efectua: aplica uma metodologia empírica de Bayes para dados de
expressão genética para lidar com arrays replicados e múltiplas condições);
Desenvolvido por:
(Vários)
Principal: Unidade de Bioestatística do Instituto Medico de Harvard
7.1.7. SNOMAD ( Standardization and NOrmalization of MicroArray
Data )
URL: http://pevsnerlab.kennedykrieger.org/snomadinput.html
Licença: (GNU license)Freeware, não é necessário o registo de utilizador;
Funcionalidades:
O SNOMAD é constituído por uma colecção de algoritmos dirigidos para a
estandardização e normalização de dados de microarrays de DNA. Esta ferramenta web
tem grande parte das suas transformações dirigidas ao refinamento de dados de pares de
microarrays. Como se pode observar na Figura 1.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
37
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
Figura 18 – Vista geral das transformações do SNOMAD
Desenvolvido por:
Carlo Colantuoni and George W. Henry no laboratory of Jonathan Pevsner (Johns
Hopkins School of Medicine, Department of Neuroscience and Kennedy Krieger
Research Institute, Department of Neurology) e Scott Zeger (Johns Hopkins School of
Public Health).
7.1.8. Cap-Web (Cgh Array analysis Platform on the WEB)
URL: http://bioinfo-out.curie.fr/CAPweb/
Licença: Freeware, necessita registo para uso
Funcionalidades:
A Ferramenta CapWeb, é uma ferramenta de que permite a gestão, visualização e
análise comparativa de arrays de hibiridização genética. A arquitectura do sistema é
apresentada na Figura 2.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
38
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
Figura 19 – Cap-Web arquitectura do software.
O procedimento para o utilizador é:
o Upload dos ficheiros e análise de uma imagem de uma CGH array e anotação
do array (gerados por: Genepix, spot, Maia, ...);
o Efectua a normalização de dados automaticamente. Este usa o package
MANOR do R;
o Detecção do ponto de fractura e atribuição de estado usando o package do R
GLAD do R;
o Produção de um relatório para validação e posterior análise ou descarte da
análise.
o Integração no VAMP (interface gráfico para visualização e análise de arrays
CGH);
Desenvolvido por:
Stéphane Liva, Philippe Hupé, Pierre Neuvial, Isabel Brito, Emmanuel Barillot and
Philippe La Rosa, Institut Curie Bioinformatics Unit
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
39
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
7.1.9. GeneSpring gx 7.3
URL: http://www.chem.agilent.com/Scripts/PDS.asp?lPage=27881
Funcionalidades:
O GeneSpring é uma aplicação do tipo desktop, talvez uma das soluções de análise de
dados de experiências de microarrays mais completas presentes no mercado, na sua
versão actual permite:
Ferramentas estatísticas avançadas:
o ANOVA de um e dois parâmetros;
o Taxa de falsas descobertas;
o Correcções de Múltiplo teste;
o Testes pós Hoc Tukey e Student-Newman-Keuls;
Reconhecimento de Padrões:
o Arvores de Genes;
o Arvores de experiência;
o Mapas Auto-organizativos;
o Clustering de k-médias;
o Custering QT;
o Análise de componentes principais;
Displays Gráficos intuitivos:
o Gráficos de Distribuição 2D e 3D;
o Gráficos Volcano;
o Gráficos de Caixa;
o “Dendograms” 2D;
o Mapas de cromossomas;
Compatibilidade Multi-plataforma:
o Permite utilizar dados de gerados por diferentes tipos de scanners Agilent,
Affymetrix, GE Healthcare, etc. e exporta os dados para o formato
MAGE-ML (Microarray Gene Expression-Markup Language ).
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
40
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
Funcionalidades extensíveis:
- Permite o uso de aplicações externas tais como BioConductor, SAS, MATLAB®
e algoritmos R;
Teste de Hipóteses;
Avaliação de qualidades de dados:
o Normalização “LOWESS” de intensidades independentes;
o Normalização Global por Chip ou por Gene;
o Normalização para amostras de controlo especificadas;
Desenvolvido por:
Agilent Technologies, Inc.
7.1.10.
GeneSight v4.1
URL: http://www.biodiscovery.com/index/genesight
Funcionalidades:
Figura 20 – Screen shots “genesight”
O GeneSight permite aos investigadores explorar grandes quantidades de dados de
várias experiências usando técnicas e ferramentas avançadas de normalização,
visualização e decisão estatísticas. Estas ferramentas incluem GenePie™, gráficos de
distribuição 2D, gráficos de Histogramas de rácios interactivos, gráficos hierárquicos,
K-médias, Clustering de redes neuronais, análise de componentes principais, e análises
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
41
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
condicionais tais como séries temporais. A ferramenta analisadora de significados
(“significance analyzer”) pode determinar genes que tenham padrões de expressão que
podem variar entre classes de condições experimentais, tais como estados de doença.
O Genesight possui também capacidade de “query” a bases de dados públicas para
relacionamento adicional de dados dos genes que estão a ser analisados no microarray,
de modo a que sejam efectuadas análises estatísticas em dados que contenham valores
replicados, construir subgrupos de genes usando metodologias gráficas ou visuais, e
gerar relatórios contendo todos os campos de dados.
Desenvolvido por:
Biodiscovery, Inc
7.1.11.
J-Express Pro 2.7
URL: http://www.molmine.com/
Funcionalidades:
Figura 21 – Screen shots “J-Express 2.7”
O J-Express 2.7 é software que permite análise e visualização de dados de
Microarrays, este programa dá acesso a algoritmos de “scaling” multi-dimensional,
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
42
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
clustering e visualização de um modo flexível. Este é compatível com dados da
Genepix, Affymetrix, Agilent, Scanalyze e Array Express e permite muito agilmente
construir filtros para conversão para outros sistemas, e os ficheiros com formatação
tabular (ex.: Excel) são também facilmente exportados.
As funcionalidades principais do J-Express são:
o SAM (referido no ponto 1.1);
o Mapeamento de Ontologia de Genes;
o ANOVA + p – valores e FDR;
o Scripting;
o Estrutura extendida para agrupar genes e amostras;
o Teste de t-score e s-score;
o Documentação estendida de informação de meta dados;
o Formato MAGE-ML na entrada e saída;
Desenvolvido por:
Molmine Bioinformatics Software Solutions
7.1.12.
Rosetta Resolver
URL: http://www.rosettabio.com/products/resolver/
Funcionalidades:
A aplicação “Rosetta Resolver” é uma ferramenta de análise de experiências de
microarrays muito semelhante ás anteriormente apresentadas, esta ferramenta é muito
versátil que permite normalização de dados, análise ao nível de genes, sendo que esta
está preparada para o sistema operativo Affymetrix GeneChip®. Actualmente esta
aplicação encontra-se integrada na ferramenta descrita no ponto 3.1, GeneSpring
desenvolvida pela Agilent technologys.
Desenvolvido por:
Rosetta Biosoftware
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
43
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
7.1.13.
Spotfire DecisionSite System v8.2
URL: http://support.spotfire.com/
Funcionalidades:
O software Spotfire é uma ferramenta de data mining que sofreu alterações de modo
a que seja efectuada análise de dados de experiências de microarrays.
O Spotfire corre num browser Web, e as diferentes ferramentas de análise são
carregadas no lado do cliente conforme as necessidades. Este é um package
empresarial e fornece acesso a bases de dados extensivas e a plataformas de
desenvolvimento, workflows guiados, e ferramentas de visualização e análise
dinâmicas. As suas ferramentas de visualização podem ser directamente exportadas
para o MS WORD™ ou POWER POINT™ ou mesmo uma página web.
Desenvolvido por:
Spotfire.Inc
7.1.14.
S+ArrayAnalyzer®
URL: http://www.insightful.com/products/s-plus_arrayanalyzer/
Funcionalidades:
O S+ArrayAnalyser é um produto desktop que efectua data-mining, que fornece
módulos para o software de estatística S-PLUS de modo a que seja efectuada a análise
de dados de experiências de microarrays. As principais funcionalidades do S+
ArrayAnalyser são:
o Filtragem e controlo de qualidade;
o Métodos de normalização particulares;
o Técnicas de Clustering:
o Controlo de taxa de erro de familiaridade e taxa de falsa descoberta;
o Gestão da lista de anotação e genes;
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
44
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
o Relatórios tabulares e gráficos;
o Ambiente de desenvolvimento extensivo e aberto;
o Inclui portos de comunicação entre R e S-PLUS do BIOCONDUCTOR.
O S+ArrayAnalyser encontra-se preparado para operar com dados dos seguintes
fabricantes:
o Affymetrix GeneChip® MAS 4/5 summary data;
o Affymetrix probe-level (CEL, CDF and Probe) data;
o Two-channel data including GenePix, Spot, ScanAlyze, e Agilent;
o Desenvolvido:
o Insightful Corporation
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
45
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
8.
Grafcreator
8.1. Objectivos
Esta fase do trabalho teve como objectivo desenvolver uma aplicação Web
independente que permitisse a geração de relatório constituído por gráficos que
permitem realizar o controlo de qualidade de uma experiência de microarrays.
Aplicação desenvolvida permite a utilização de ficheiros de dados proveniente dos
scaners mais utilizados: spoted arrays; Quantarray; Agilent;
8.2. Ferramentas utilizadas
8.2.1. Tecnologia de desenvolvimento
Optou-se pelo desenvolvimento utilizando a tecnologia Java/JSP (Java Server Pages)
que se trata de uma plataforma de desenvolvimento independente orientada aos objectos
muito flexível, versátil e gratuita que permite a utilização de software já existente para
comunicação entre o “R” e a aplicação.
8.2.2. Linguagem estatística utilizada
R é uma linguagem “open source” que proporciona um ambiente de desenvolvimento
de alto nível para programação estatística e um conjunto de pacotes adicionais
desenvolvidos especificamente para a análise de experiências biológicas. R pode ser
utilizado de acordo os termos de licença pública GNU.
Para implementação dos gráficos gerados pela aplicação desenvolvida foi
principalmente utilizado o pacote “limma” (Linear Models for Microarray Data) já
referenciado no ponto 7.1.4.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
46
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
8.2.3. Interligação Java – R
o R-(D)COM (http://www.sciviews.org/_rgui/projects/RDcom.html)
R-(D)COM pode ser utilizada para construir um interface para gráficos R usando
ferramentas Microsoft (Microsoft C++, Microsoft Visual Basic ou Microsoft Excel).
É uma ferramenta bastante limitada, só pode se utilizado exclusivamente em sistemas
Windows, e não prevê a utilização de Java que para a implementação da aplicação não é
interessante.
o rJava (http://stats.math.uni-augsburg.de/software/rJava/index.shtml )
rJava é um interface que utiliza a Java Native Interface (JNI) para implementar a
comunicação R – Java.
É um sistema muito básico que permite a criação de objectos e chamar métodos a
aceder objectos Java a partir do R.
o Rserve (http://stats.math.uni-augsburg.de/Rserve/ )
Rserve foi desenvolvido e é mantido por Simon Urbanek. É um servidor TCP/IP que
permita a comunicação R – Java ou C++. A sua grande vantagem reside no facto de não
ser necessário a inicialização ou ser incorporado numa biblioteca partilhada.
Além de ligações locais o Rserve permite também ligações remotas e transferências
de ficheiros. Também fornece ao utilizador opções de segurança, tal como, login e
password encriptadas.
Existe uma livraria (JRClients) que permite a conversão directa de alguns dos tipos de
dados primitivos de dados do R para Java e vice-versa, mantendo os dados enquanto a
ligação se mantiver activa. Permite também que as instruções R possam ser passadas
directamente da aplicação.
Rseve é um sistema que funciona em qualquer plataforma que suporte R tais como:
Windows, Linux, Mac OS, entre outros. Devido ao facto de o Windows não suportar a
instrução “fork”, método que permita o lançamento de novos processos, não é possível
estabelecer ligações em paralelo utilizando apenas um instanciação do Rserve. Este
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
47
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
problema pode ser resolvido lançando um processo por cada ligação que se pretenda
estabelecer. O tamanho de dados torna-se algo limitativo para analisar experiências de
microarrays que tem um grande número de dados. Alguns métodos podem ser utilizados
para ultrapassar esta limitação.
Rserve é assim uma aplicação muito versátil e de relativa facilidade de utilização, foi
por isso a opção para a aplicação desenvolvida.
8.3. Sistema implementado
8.3.1. Diagrama de blocos
O sistema implementado é constituído pelos blocos representados na figura em baixo.
WEB
Query
JAVA
JSP
RServe
Response
R
Limma
Depósito de Ficheiros
necessários para a
análise
HDD
Figura 22 – Diagrama de blocos do sistema implementado
O RServe serve de ponte entre a página Web e o R. Quando o utilizador efectua um
pedido os dados que serão analisados são colocados num deposito no servidor Java/Jsp.
Após ser realizado esta operação é realizado um pedido ao Rserve para correr um script
R, previamente colocado no servidor, que gera um conjunto de gráficos predefinidos
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
48
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
importantes para realização do controlo de qualidade da experiência de microarrays.
Estes gráficos são colocados pelo R no depósito de dados para que possam ser
mostrados ao utilizador.
Para cada utilizador que requer a utilização da aplicação é criado um depósito
individual para permitir a utilização simultânea da aplicação. Os dados gerados são
posteriormente eliminados tendo em consideração a data criação e de ultima utilização
dos dados.
8.3.2. Diagrama de fluxo da aplicação
Upload
Ficheiros
Escolher
Tecnologia
Retirar informação excessiva do
ficheiro segundo fabricante
Iniciar
Escolher
Parâmetros
Gerar Relatório
Estabelecer ligação com
R usando RServe
Efectuar a análise do usando
Script’s R predefinidos
Figura 23 – Diagrama de fluxo do sistema implementado
O sistema foi implementado tendo em conta um estrutura circular de modo a que não
seja possível passar a uma fase seguinte sem que as anteriores sejam realizadas.
A primeira fase é a escolha do fabricante, já que os diferentes fabricantes têm
estruturas de ficheiros diferentes.
Na segunda fase é pedido ao utilizador que realize a escolha dos ficheiros necessários
para a realização. Para a realização do controlo é necessário um ficheiro que contem a
anotação da experiência (ficheiro GAL) e de o ficheiro que contem os dados
provenientes do scaner (ficheiro SPOT), é este ficheiro que contem os dados de
intensidade de vermelho e verde, assim como outros valores importantes para efectuar
os gráficos.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
49
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
Na terceira fase é pedido ao utilizador que efectua a escolha do tipo de marcação dos
spots do array (ficheiro SPOT-TYPE). Este ficheiro permite que determinado spots que
contem certos tipos de genes sejam marcados com cores diferentes para que a
visualização dos gráficos seja mais fácil e intuitiva.
Na quarta e ultima fase e mostrado ao utilizador o resultado final na forma de um
relatório e permite também fornecido uma versão do relatório que é possível ser
imprimida.
8.3.3. Diagrama de fluxo para o utilizador
Iniciar
Escolher
Tecnologia
Upload
Ficheiros
Escolher
Parâmetros
Gerar Relatório
Figura 24 – Diagrama de fluxo para o utilizador
Para o utilizador o diagrama de fluxo responde há exigência de uma estrutura simples
e linear e que exija pouca interacção por parte do utilizador.
Numa primeira fase é pedido ao utilizador a escolha do fabricante do scaner que
produziu os ficheiros que pretende submeter para análise. Esta escolha torna-se
necessário devido ao facto de cada fabricante ter uma estrutura diferente para os
ficheiros, este problema será discutido no ponto seguinte. A figura mostra menu inicial
e os fabricantes permitidos pela aplicação.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
50
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
Figura 25 – Diferentes fabricantes permitidos pela aplicação
Do ponto de vista do utilizador os passos seguintes são independentes das escolhas
efectuadas neste passo. Mas para a aplicação terão que ser efectuados alguns
procedimentos que serão explicados no ponto seguinte.
No passo seguinte o utilizador tem que efectuar o “upload” dos ficheiros que pretende
analisar, sendo obrigatório introduzir o ficheiro experimental e o ficheiro de anotações,
tal como explicado no ponto anterior. A figura seguinte mostra o menu para realizar o
“upload” dos ficheiros.
Figura 26 – Menu para realização do “upload” dos ficheiros
Após efectuar o “upload” dos ficheiros a utilizador tem realizar a escolha do ficheiro
“Spot-Types”. Neste ficheiro e definido uma cor e uma terminologia (Spot Type) para
um conjunto de genes ou spots para a experiência que se pretende efectuar o controlo de
qualidade. Este ficheiro torna-se essencial para efectuar a geração dos gráficos porque
assim é possível dividir os “spots” de acordo com a sua função na experiência, por
exemplo separar os controlos (“spots” que tem como finalidade controlar o resultado da
experiência) dos genes mais relevantes para análise dos resultados. A figura seguinte
mostra um exemplo de um ficheiro “SpotTypes”.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
51
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
Figura 27 – Exemplo do ficheiro “SpotTypes”
A aplicação permite que o utilizador opte por uma das seguintes possibilidades:
Uma de duas opções por defeito que correspondem a ficheiros “SpotTypes”
habitualmente utilizados na realização de “arrays”;
O utilizador realizar “online” o seu ficheiro “SpotTypes”;
Efectuar o “upload” de um ficheiro “SpotTypes”.
A figura seguinte mostra o menu onde o utilizador deverá efectuar a sua escolha:
Figura 28 – Menu para escolha de opção do ficheiro “SpotTypes”
Após efectuar estes passos é iniciado o processo de geração dos gráficos. Este
processo poderá demorar alguns minutos já que os ficheiros a serem analisados tem
dimensões consideráveis e o Rserve implica alguma perda de rapidez na produção dos
resultados finais. Durante o tempo em que se está a realizar a operação é mostrado um
quadro com seguinte:
Figura 29 – Quadro mostrado durante a geração do relatório
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
52
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
Após a geração do relatório é mostrada uma página com um relatório com as imagens
geradas, tal como é mostrado na figura seguinte:
Figura 30 – Cabeçalho do relatório gerado
O cabeçalho do relatório é constituído por alguns “links” que correspondem aos
blocos de imagens geradas:
o Dado crus (sem qualquer tratamento);
o Dados normalizados em relação aos controlos;
o Dados normalizados em relação aos genes;
o Dados normalizados em relação aos genes e controlos;
o Gráficos de “background” e Relação Sinal Ruído;
o Histogramas.
O utilizador tem também a possibilidade de utilizar um versão com as dimensões
adequadas para ser impressa.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
53
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
8.3.4. Conversão dos ficheiros
Um dos principais problemas que ocorreram durante o desenvolvimento desta
aplicação foi a diversidade de fabricantes de “scaners” e falta de homogeneidade dos
ficheiros produzidos por cada um deles.
A utilização do pacote “R” limma, que está optimizado para ficheiros “spot arrays”
levou a optar uma estratégia de conversão dos ficheiros dos outros fabricantes
(“QuantaArray” e “Agilent”) num semelhante ao modelo mais comum (“spot arrays”).
De notar que os ficheiros destes fabricantes são ficheiros mais completos mas a
informação adicional é irrelevante para o controlo de qualidade e para a análise de
experiências de microarrays.
o Ficheiros “Agilitent”
Figura 31 – Exemplo ilustrativo do cabeçalho dos ficheiros “agilitent”
Após a análise deste tipo de ficheiros verificou-se que cada um dos blocos
constituintes está separado por palavras-chave tal como “FEPARAMS”, “STATS”,
“FEATURES”.
Como para o controlo de qualidade apenas tem relevância os valores do canal
vermelho, verde e os valores do nível de “background” e estes valores estão situados na
zona “FEATURES”, optou-se por criar um novo ficheiro constituído apenas por este
bloco do ficheiro.
Como a posição das colunas e os respectivos nomes não correspondem aos utilizados
por defeito no pacote “limma” é passado através do script a posição e nome das colunas
relevantes para o controlo de qualidade.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
54
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
o Ficheiros “QuantArray”
Figura 32 – Exemplo ilustrativo de um ficheiro “Quantarray”
Figura 33 – Fim do bloco de dados
Após a análise dos ficheiros “Quantarray” verificou-se que os dados relevantes estão
entre as palavras-chave “Begin Data” e “End Data”.
Tal como no caso dos ficheiros “Agilitent” optou-se por criar um novo ficheiro
contendo apenas os valores contidos entre as palavras-chave.
A opção escolhida revelou-se bastante eficaz, permitindo que aplicação suportasse
dados dos vários fabricantes de modo simples e sem necessidade de grande intervenção
por parte do utilizador.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
55
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
9.
Mind – Controlo de qualidade e análise de dados
9.1. Objectivos
Nesta segunda fase de desenvolvimento teve como objectivo o desenvolvimento de
uma aplicação que possibilite o controlo de qualidade e análise de dados de uma
experiência de microarrays interligada com o sistema LIMS (ver capitulo 6) em
desenvolvimento – o Mind (Microarray INformation Database).
9.2. Análise ao sistema base (MIND)
O Mind é um sistema de armazenamento de dados laboratoriais bastante completo
pelo que este ponto irá focar-se apenas nos aspectos relevantes para a interligação de
ferramentas de controlo de qualidade e análise de dados.
9.2.1. Tecnologia de desenvolvimento
A versão mais recente do “Mind” foi desenvolvida utilizando a tecnologia “Asp.Net
2.0” da Microsoft.
A mudança de tecnologia baseou-se sobretudo no facto de esta tecnologia ser mais
recente e permitir a utilização de meios de desenvolvimento mais evoluídos (Microsoft
Visual Studio 2005) que permitem uma programação mais simples e eficaz. Algumas
das funcionalidades da Microsoft Visual Studio 2005 permitem que o programador
utilize o tempo com mais eficácia, sobretudo no design da página.
A base de dados que serve de suporte foi implementada com a utilização do Microsoft
SQL Server 2005, que permite um interligação bastante eficaz com o Microsoft Visual
Studio 2005.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
56
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
9.2.2. Modelo de dados
Uma experiência de microarrays geralmente é constituída por vários arrays de modo,
tal como já foi referido em pontos anteriores, a minimizar a ocorrência de erros e se
poder realizar um análise eficaz dos dados resultantes da experiência.
Assim a base de dados do Mind está estruturada de modo a permitir ao utilizador uma
grande variedade de opções na inserção dos dados.
Figura 34 – Diagrama representativo do modelo de dados utilizado no Mind
A figura em cima representa base de dados do Mind no que respeita a par de
introdução de uma experiência os dados resultantes dessa experiência.
Cada experiência que um determinado utilizador submete a base dados tem associada
um ou mais “bioassay”. Um “bioassay” representa cada uma das hibridações realizadas
durante a experiência. Cada experiência tem associado um ficheiro (ficheiro GAL) que
contem as anotações experimentais, como já referido em pontos anteriores.
Cada um dos bioassays tem associado uma ou mais imagens do microarray, podem ser
imagens de diferentes scaners. A imagem tem associada uma tabela denominada
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
57
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
“Biassay Data” que contem os dados experimentais provenientes do scaner. A cada
“Bioassay Data” está associada um ficheiro com os dados da experiência (Spot File).
9.2.3. Formato dos ficheiros
Como já foi referenciado em pontos anteriores um dos maiores problemas na análise
de experiências de microarrays reside no facto de não homogeneidade nos ficheiros de
saída dos scaners.
Para resolver esse problema, os ficheiros armazenados no Mind tem todos a mesma
estrutura independentemente da sua origem. Os ficheiros ao serem submetidos são
alterados de modo a serem semelhantes aos ficheiros “Spoted Arrays”.
Este método tem as vantagens de ser mais fácil:
o A manipulação dos dados;
o A exportação, visualização e análise dos dados.
9.3. Sistema Implementado
9.3.1. Diagrama de blocos
WEB
Depósito Scripts
-Dados
-Scripts
Desejados
ASP.NET 2.0
RLinker
C#
Mind Database
Script
R
R
2.1.1
Depósito de Ficheiros
Resultantes
Figura 35 – Diagrama de blocos do sistema implementado
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
58
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
A figura em cima representa o diagrama de blocos do sistema implementado. A
aplicação construída em Asp.Net 2.0 serve de interface entre o utilizador e a base de
dados do Mind. A aplicação quando um utilizador submete um pedido comunica com a
base de dados do Mind e retira toda a informação necessária para efectuar o controlo ou
análise de dados, colocando-a num “depósito”.
O RLinker, será explicado com mais detalhe posteriormente, recebe os pedidos da
aplicação dos utilizadores e constrói um script que irá permitir satisfazer os pedidos.
Depois comunica com o R de modo a produzir os resultados desejados.
9.3.2. RLinker
Como se optou por uma implementação utilizando a tecnologia Asp.Net 2.0 e C#
inviabilizou-se a possibilidade de utilizar o Rserve (já descrito no ponto 8.2.3), como
tal, surgiu a necessidade de implementar uma mecanismo que efectua-se a comunicação
entre o Mind e o R, foi então que surgiu o “Rlinker”.
Palavras-chave
Exemplo:
fictargets =
“exemplo.txt”
gal_file = “fish.gal”
path = “c:/data”
RLinker
targets <- readTargets("fictargets")
RG <-read.maimages(targets$FileName,
wt.fun=wtarea(150), source = "spot")
RG$weights<-matrix(1,length(RG$R),1)
RG$genes <- readGAL (galfile = "gal_file")
RG$printer <- getLayout(RG$genes)
types <- readSpotTypes()
RG$genes$Status <- controlStatus(types, RG)
Depósito Scripts
save.image("path/fictargets.RData")
Lança um processo para
executar o novo script
Script R
A ser executado
Os resultados são
colocados numa pasta
comum
targets <- readTargets("exemplo.txt ")
RG <-read.maimages(targets$FileName,
wt.fun=wtarea(150), source ="spot")
RG$weights<-matrix(1,length(RG$R),1)
RG$genes <- readGAL (galfile ="fish.gal ")
RG$printer <- getLayout (RG$genes)
types <- readSpotTypes()
RG$genes$Status <- controlStatus(types, RG)
save.image(" c:/data /fictargets.RData")
Figura 36 – Diagrama de blocos do Rlinker
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
59
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
A figura em cima representa o diagrama de blocos do “Rlinker” e o seu modo de
funcionamento pode ser subdividido em vários passos:
o Recebe um conjunto de variáveis e o conjunto de scripts que a aplicação
pretende lançar;
o Ao receber o pedido, lê de um banco de “scripts” o conjunto dos scripts que se
pretende executar e junta-os num único script;
o Substitui um conjunto de palavras-chave dos scripts originais pelas variáveis
que recebeu por parta da aplicação;
o Chama o R através de um processo lançado;
o O “script” resultante é executado;
o Os dados de saída são colocados numa pasta previamente definida.
O funcionamento do “Rlinlker”, apesar de ser muito simples, revelou-se bastante
eficaz.
Simulação de utilização simultânea de vários utilizadores
De modo a poder ser aferido o comportamento do “Rlinker” quando for sujeito a
utilização intensiva por parte dos utilizadores, criou-se um mecanismo que permitia
lançar N processos simultâneos.
Os resultados da simulação estão apresentados nas figuras seguinte:
Tem po por Proces so
Tempo por Processo
32
31,5
31
30,5
30
29,5
29
28,5
0
5
10
15
20
25
Processos
Figura 37 – Gráfico número de processos simultâneos versos Tempo por cada processo
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
60
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
Tempo Total Espera
700
600
Tempo (s)
500
400
300
200
100
0
0
5
10
15
20
25
Proce ssos
Figura 38 – Gráfico número de processos versus tempo total
As simulações foram efectuadas utilizando um “script” que continha todos os gráficos
que o Mind suporta e foram executados num computador pessoal, pelo que no servidor
os tempos de execução deverão se mais curtos.
Da análise dos gráficos pode-se verificar que o tempo médio por é independente do
número de utilizadores (30s).
A medida que aumentamos o número de utilizadores simultâneos o tempo total que
cada um terá de esperar pelos resultados aumenta linearmente e pode tornar-se
incomportável. De notar que na aplicação a execução dos scrips é dividida ao longo das
várias etapas, quer do controlo de qualidade quer da análise de dados, o que permite que
tempo de espera seja mais dissipado.
Podemos assim concluir, que apesar do Rlinker responder às pretensões iniciais
torna-se demasiado lento se o número de utilizadores aumentar, torna-se assim um
ponto importante na evolução do Mind.
9.3.3. Design Experimental
Como já foi referenciado no sub-capítulo 5.4, o design experimental de uma
experiência de microarrays pode assumir as mais variadas formas dependendo do
objectivo da experiência. Como é óbvio para analisar uma experiência torna-se
obrigatório criar um mecanismo que permita ao utilizador definir o design experimental.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
61
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
O pacote R, limma, necessita para que a análise seja efectuada de uma matriz que
representa o design experimental, por exemplo no caso seguinte:
A1
A
B1
A2
A3
A4
B2
Figura 39-Exemplo Design
Array 1
Array 2
Cy3
A
B1
Cy5
B1
A
Array 3
Array 4
A
B2
B2
A
A
Minus
A
Minus
Figura 40 – Lista de relações
B1
B2
Figura 41 – Matriz de Design
A conjugação da matriz de design e da lista de relações deverá originar uma matriz
única e que explicite correctamente o design experimental, para este exemplo seria:
A – B1
A – B2
1
0
-1
0
0
1
0
-1
Figura 42 – Vector Design
Surge assim a necessidade de criar um algoritmo que gere o vector design com o
mínimo de intervenção por parte do utilizador.
O algoritmo deverá o gerar uma matriz com o número de colunas igual ao número de
relações definidas e o número de linhas igual ao número de arrays da experiência. O
número de relações necessárias é sempre igual ao número de classes diferentes menos
uma, condição necessária e suficiente para definir o vector de design.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
62
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
O algoritmo desenvolvido tem o seguinte procedimento:
o Determinar o número de classes diferentes na matriz de design;
o Receber do utilizador as relações entre as classes definidas;
o Efectuar uma comparação de cada uma das relações. Neste caso poderão
ocorrer três situações:
o Caso a linha numero “n” da matriz seja igual a relação numero “y” colocase um “1” na posição (n, y).
o Caso a linha numero “n” da matriz seja a inversa da relação numero “y”
coloca-se um “-1” na posição (n, y).
o Caso a linha numero “n” da matriz seja diferente da relação numero “y”
coloca-se um “0” na posição (n, y).
Após a implementação do algoritmo realizaram-se alguns testes que revelaram que
este funcionava de um modo correcto e que satisfazia as necessidades inerentes a
realização de análise de dados no Mind.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
63
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
9.3.4. “WorkFlow” para o utilizador
Do ponto de vista do utilizador, o Mind está divido em duas partes distintas:
“Controlo de Qualidade” e “Análise de Dados”.
Controlo de Qualidade
O controlo de qualidade está dividido em cinco passos básicos como mostra a figura
em baixo.
Data – Set
Spot type
File
Background
Correction
Methods
Normalization
Results
Methods
Figura 43 – “WorkFlow” – Controlo de Qualidade
o Data Set – seleccionar os ficheiros para análise;
o Spot File – escolher o tipo de marcador para cada um dos “spots”;
o Background Correction Methods – escolher o tipo de correcção de
background no controlo de qualidade;
o Normalization Methods – escolher o tipo de normalização de dados a realizar
durante o controlo de qualidade;
o Results – Diversos tipos de métodos de visualização disponíveis.
Análise de dados
A análise de dados está dividida em cinco passos básicos, tal como mostra a figura em
baixo.
Data – Set
Spot type
Design
File
Output
Results
Configuration
Figura 44 – “WorkFlow” – Análise de dados
o Data Set – seleccionar os ficheiros para análise;
o Spot File – escolher o tipo de marcador para cada um dos “spots”;
o Design – definir o design experimental;
o Output Configuration – definir o modo dos dados de saída;
o Results – Diversos tipos de métodos de visualização disponíveis
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
64
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
9.3.5. “WorkFlow” Global
Figura 45 – “WorkFlow” da organização do Mind
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
65
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
9.3.6. Funcionalidades
o
Data Set
O primeiro passo para se iniciar o controlo de qualidade ou a análise de dados é o
“Data Set”. O “Data Set” consiste na escolha das experiências e por consequência os
ficheiros para pretendidos para efectuar a análise ou controlo de qualidade.
O Data Set está divido em três passos:
o Selecção da Experiência
Este primeiro passo consiste na escolha da Experiência que contem os ficheiros que o
utilizador pretende analisar ou efectuar o controlo de qualidade.
A aplicação apenas permite que uma experiência seja seleccionada. Se o utilizador
pretender uma pesquisa mais rápida pode utilizar a funcionalidade de pesquisa que a
executa baseada no nome da experiência. Para prosseguir o utilizador deverá pressionar
o botão “Accept”.
Figura 46 – Exemplo do menu “Experiment”
o Selecção das hibridações
Como já foi referido em pontos anteriores cada experiência é constituída por várias
hibridações. Neste passo o utilizador deverá escolher o conjunto das hibridações que são
validas para o controlo de qualidade ou a análise de dados.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
66
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
Figura 47 – Exemplo do menu “Bioassays”
É obrigatório utilizador escolher pelo menos uma hibridação para continuar. Pode
ainda ordenar a tabela por ordem ascendente ou descendente conforme qualquer um dos
parâmetros apresentados no cabeçalho da tabela.
o Selecção dos ficheiros
Este ponto difere caso o utilizador tenha escolhido Controlo de Qualidade ou Análise
de Dados. Podem então ocorrer dois casos:
Controlo de Qualidade
Não existe limitação no número de ficheiros a poderem ser seleccionados.
Figura 48 – Exemplo do menu “Data Files” – Controlo de Qualidade
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
67
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
A árvore representa a escolhas efectuadas pelo utilizador até este ponto, a experiência
e as respectivas hibridações seleccionadas.
Surgem agora os ficheiros de dados de cada uma das hibridações, o utilizador deverá
seleccionar aqueles que pretende levar para o Controlo de Qualidade. Para facilitar essa
tarefa pode utilizar os botões “Select All” e “Unselect All” para seleccionar e
desceleccionar todos os ficheiros presentes na árvore.
Análise de Dados
Para o caso do utilizador estar a efectuar a “Análise de Dados” não faz sentido poder
escolher mais do que um ficheiros por cada hibridação.
Figura 49 – Exemplo do menu “Data Files” – Análise de dados
Assim quando o utilizador seleccionar uma das hibridações na árvore surgirá os
ficheiros de dados relacionados com essa hibridação. O utilizador poderá escolher
apenas um desses ficheiros.
Depois de seleccionar os ficheiros o utilizador pode realizar uma última confirmação
dos ficheiros que pretende levar para a Análise de Dados.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
68
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
o Data Set inicial
O passo inicial para realizar o Controlo de Qualidade ou a Análise é o Data Set, tal
como foi explicado no ponto anterior
Caso durante a sessão actual nenhum “Data Set” tenha sido efectuado surgirá um
quadro como o da figura em baixo.
Figura 50 – Menu sem “Data Set”
Para continuar o utilizador deverá realizar o “Data Set” tal com foi explicado no ponto
anterior.
Após ter conseguido concluir o “Data Set” com sucesso surgira um quadro tal como
na figura em baixo.
Figura 51 – Menu com “Data Set”
Este menu mostra um resumo das escolhas efectuadas pelo utilizador.
O utilizador poderá efectuar uma última escolha dos ficheiros que pretende levar para
o Controlo de Qualidade ou Análise de Dados baseado nas notas e valores que estão
associados aos ficheiros escolhidos no “Data Set”.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
69
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
o Escolha dos ficheiros “Spot Files”
Este ponto é comum quer ao Controlo de Qualidade quer à Análise de Dados.
Figura 52 – Default 1
Figura 53 – Default 2
Figura 54 – “Costum” Spot File
Figura 55 – Upload File Spot Type
O ficheiro “SpotTypes” tem como finalidade definir o tipo de realce que o utilizador
pretende dar um certo tipo de “spots” como já foi referenciado em secções anteriores.
Existem algumas formas de o utilizador poder definir este ficheiro:
o Default 1 e 2 – dois tipos comuns de ficheiros “SpotType”, podem servir de
exemplo.
o “Costum” – O utlizador pode definir “online” os seu próprio ficheiro “SpotType”.
Para isso existem quatro campos de preenchimento obrigatório:
o Spot – Type – Define tipo de spot (Gene ou Controlo);
o ID – Define o id dos genes para os quais esta marcação é valida;
o Name - Define o nome dos genes para os quais esta marcação é valida;
o Colour – Define a cor com qual estes “spots” serão marcados em alguns
gráficos.
o “Upload” – O utilizador pode realizar o “upload” de ficheiros “SpotFiles” que
obedeça às regras descritas em cima.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
70
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
o Correcção de “background” – Controlo de Qualidade
Figura 56 – Menu correcção de backgorund – Controlo de Qualidade
Neste ponto o utilizador deverá escolher o método de correcção de background e os
gráficos
Os métodos disponíveis são:
o None – os valores do background são tratados como fossem zero;
o Subtract – os valores das intensidades “background” e “forgorund” são
subtraídos;
o Movingmin – o valor do background é estimado com base no mínimo de uma
matriz 3× 3 em redor de um determinado “Spot”;
o Half – os valores das intensidades cujos valores são inferiores a 0,5 depois da
correcção de background ficam iguais a 0,5;
o Minimum – qualquer valor de intensidade negativo depois da correcção de
background é igualado ao mínimo dos positivos;
o Edwards – é usada uma interpolação logarítmica para ajustar os valores de
background;
o Normexp – usando a covalência do sinal de “background” é ajustado de modo
as intensidades finais sejam positivas.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
71
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
o Normalização dos dados – Controlo de Qualidade
Figura 57 – Menu normalização de dados – Controlo de Qualidade
Neste ponto o utilizador deverá escolher o método de normalização que pretende
utilizar durante o Controlo de Qualidade.
Os métodos disponíveis são:
o None – nenhum tipo de normalização é realizada
o Median – realiza a normalização dos valores M e A entre uma série de arrays.
o Robust Spline – normaliza os valores m de um único microarray e usando o
método de regressão empírico de Bayes;
o Loess – uma versão rápida da regressão pesada quando existe apenas uma
variável.
o PrinttiLoess – método “loess” realizado por cada grupo printtip.
O utilizador pode escolher um ou mais dos gráficos disponíveis. Se escolher “Plot M
vs A” irão ser gerados os gráficos MA para dados normalizados em relação a genes
controlos e todos os dados.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
72
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
o Resultados – Controlo de Qualidade
Figura 58 – Menu “Report” – Controlo de Qualidade
Para cada um dos ficheiros analisados ira surgir alguns métodos de visualização. Os
métodos são os mesmos para todos os ficheiros analisados, mas os resultados sai
independentes entre si.
Para escolher o ficheiro que o utilizador pretende ver os resultados de saída o
utilizador basta seleccionar o seu nome na árvore do lado esquerdo.
Os métodos disponíveis são:
o “Slide Show” com todos os gráficos gerados pelo Mind (figura 59)
o Pode escolher cada um dos gráficos na árvore do lado esquerdo
o Rolar por todos os gráficos com a ajuda dos botões “Previous” e “Next”
o “Download” de um ficheiro PDF que contem todos os gráficos gerados pelo
Mind;
o “Download” de um ficheiros com colunas separadas por “tab” com os dados
normalizados das intensidades do vermelho e do verde;
o Actualização das notas e valores numéricos da avaliação de cada um dos
ficheiros (figura 60)
Figura 59 – “Slide Show”
Figura 60 – Notas e valores da classificação
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
73
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
o Design Experimental – Análise de Dados
Figura 61 – Menu “Design” – Análise de dados
Neste ponto o utilizador deverá definir a matriz de design. O sistema define uma
matriz exemplo com base no biomaterial de cada canal, mas permite que esta seja
alterada de forma que a matriz seja a correcta.
Apesar de no Mind se poder submeter arrays de vários tipos, já referenciados em
outros pontos, a análise efectuada pelo Mind apenas se podem aplicar arrays de duplo
canal. Assim caso um array submetido não seja deste tipo surgirá uma mensagem de
aviso e o array será ignorado no decorrer do processo de análise, tal como é
exemplificado na figura em cima.
Depois do utilizador explicitar a matriz de análise a aplicação corre o algoritmo
explicado no ponto 9.3.3. e vai gerar as variáveis suficientes para que o utilizador possa
definir as relações experimentais.
Após isso o sistema irá gerar o vector design tal como foi explicado no ponto 9.3.3.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
74
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
o Configuração – Análise de Dados
Figura 62 – Menu Configuração – Análise de Dados
Esta secção tem como objectivo a definição de parâmetros importante nos resultados
finais, para isso o utilizador terá que definir:
O método de correcção de background a aplicar a cada a array (explicados no ponto
9.3.6.4.)
o None;
o Subtract;
o Movingmin;
o Half;
o Minimum;
o Edwards;
o Normexp.
O método de normalização a aplicar a cada array (explicados no ponto 9.3.5.5)
o None;
o Median;
o Robust Spline;
o Loess;
o PrinttiLoess.
O número de elementos da Top Table.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
75
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
o Resultados – Análise de Dados
Figura 63 – Menu “results” – Análise de dados
Neste ponto estão disponíveis para o utilizador os resultados finais:
o Volcano Plot – cria um gráfico dos “log-f old” versus as probabilidades
logarítmicas da expressão diferencial;
o Q-Q Plots – cria um gráfico de uma amostra versus valor teórico de um
distribuição “Student’s t” ;
o Top Table – contem a lista dos genes mais expressos.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
76
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
Conclusões
O principal resultado deste trabalho foi a implementação de ferramentas para a análise
e controlo de dados perfeitamente integradas no sistema LIMS – Mind – tendo sido
concebida uma ferramenta Web que interage com o R através de um interpretador
programado em C# capaz de fazer uma gestão de scrips e dados a processar, agilizando
a comunicação entre sistemas.
Neste trabalho foi desenvolvida uma ferramenta bastante completa capaz de efectuar o
controlo de qualidade aplicando várias técnicas de correcção de background,
normalização dos dados e diversos tipos de gráficos. A ferramenta desenvolvida
mostrou-se capaz de satisfazer as necessidades dos utilizadores do laboratório de
genética da Universidade de Aveiro.
As ferramentas de análise desenvolvidas encontram-se num estado muito embrionário
podendo ser implementadas novas técnicas e metodologias para uma análise mais eficaz
das experiências de microarrays.
A vantagem principal do sistema desenvolvido é a sua flexibilidade no sentido em que
é possível e relativamente simples efectuar uma extensão da mesma, incorporando
novos algoritmos e técnicas de análise.
A selecção do conjunto de ferramentas a implementar no sistema revelou-se um dos
maiores problemas encontrados durante o seu desenvolvimento, tendo sido necessária
uma grande interacção com os elementos Grupo de Bioinformática.
A titulo pessoal o projecto permitiu-nos um grande enriquecimento pessoal ao nível
dos conhecimentos científicos, informáticos e sobretudo permitiu-nos obter uma maior
percepção do que é o trabalho em equipas multidisciplinares, assim como o uso de um
vasto leque de linguagens de programação tais como: Java, JSP, C#, ASP.NET 2.0,
SQL, e R.
Como pontos importante a considerar numa futura evolução do sistema actual
salientamos os seguintes pontos:
o Novas ferramentas de análise de dados;
o Implementação de técnicas de mineração de dados;
o Utilização de sistema “Atlas” para maior interacção com o utilizador;
o Revisão do método de interligação com o R.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
77
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
Bibliografia:
[1] Mark Schena et al, “Overview of DNA chip technology”,Department of Biochemistry,
Beckman Center, Stanford University School of Medicine,Stanford CA 94305, USA
(_author for correspondence; phone: (650) 723–5484, fax: (650) 723–6783, email:[email protected]), Abril 1998;
[2] Lockhart DJ, et al: “Expression monitoring by hibridization to high-density
oligonucleotide arrays”. Nat Biotechnol 14(13):1675-80,1996;
[3] Ahmed Fadiel et al: “Microarray applications and challenges: a vast array of
possibilitys”, The Center for Applied Genomics, Hospital of Sick Children, Canada,
2003, email: [email protected];
[4] Lockhart DJ, et al: Expression monitoring by hybridization to high-density
oligonucleotide arrays. Nat Biotechnol. 14(13):1675-80, 1996;
[5] Brazma A, et al: Minimum information about a microarray experiment (MIAME)toward standards for microarray data. Nat Genet 29(4): 365-71, 2001;
[6] Brazma A, et al: Onestop shop for microarray data. Nature 403: 699-700, 2000;
[7] I.M Ranja Eklund, Vesa Ollikainen, Paivi Onkamo, Ana Rautanen, Jamo Tuimala,
“Genetics for Computer Scientists”, 2004;
[8] Joel Perdiz Arrais, Relatório – Bolsa de Iniciação a Investigação, Aveiro, Portugal
2005;
[9] Cabrera Javier, “Exploration and Analysis of DNA microarray and protein array
data”, wiley 2004
[10] Biological Sciences Curriculum Study – Biologia das moléculas ao Homem Parte1 – Edart - São Paulo Livraria Editora Ltda.;
[11] Microarray: Quality Control, Normalization and Design, presentation, Dkfz, 19/9/05,
ou 25 - 27 January 2006,Department of Statistics and Operations Research Faculty of
Sciences, University of Lisbon, Portugal by Natalie Thorne Cambridge University
[12]
“The
Limma
Package”,
http://bioinf.wehi.edu.au/limma;
Gordon
Smith,
5/1/2006,
p22;
url:
[13] Statistical Issues in cDNA Microarray Data Analysis, Gordon K. Smyth1, Yee Hwa
Yang2 and Terry Speed12,1. Walter and Eliza Hall Institute of Medical Research, 2.
Department of Statistics, University of California, Berkeley
Address for correspondence: Dr Gordon K. Smyth, Walter and Eliza Hall Institute, Post
Office, Royal Melbourne Hospital, Victoria 3050, Australia, [email protected];
[14] “Normalization of cDNA Microarray Data”,
Speed,4/4/2003, University of California, Berkeley”;
Gordon
Smith
and
Terry
[15] “The Lims Institute, inc”. url: “http://www.limsconference.org/”
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
78
Exploração, filtragem e análise de dados laboratoriais (2005/2006)
[16] “Relatório de Projecto de Final de Curso, FunBase”, Maria Rodrigues e Luís Silva,
universidade de Aveiro, Julho de 2005.
[17] “Apresentação- Mind V2”, Joel Arrais, 19/5/2006;
[18] ”Thinking in Java – 3rd Edition”, Bruce Eckel;
[19] ”Writing Advanced Applications for the JavaTM Platform”, Calvin Austin and Monica
Pawlan;
[20] “Introducing Microsoft® ASP.NET 2.0”, Dino Esposito.
Francisco Castro Lopes (nº 21741) – Hugo Luís de Melo Pais (nº 21053)
79
Download

Phase Locked Loop - Exploração Filtragem e Análise de Dados