05_curso_antigo:r2018:alunos:trabalho_final:willbertani:start

Diferenças

Aqui você vê as diferenças entre duas revisões dessa página.


05_curso_antigo:r2018:alunos:trabalho_final:willbertani:start [2020/09/23 20:16] (atual) – criada - edição externa 127.0.0.1
Linha 1: Linha 1:
 +====== William Bertani Torres ======
  
 +{{:01_curso_atual:alunos:trabalho_final:willbertani:26169685_1568799146540642_4984357358671604386_n.jpg?200|}} 
 +
 +Mestrando em Aconselhamento Genético pelo IB-USP 
 +
 +O título do meu trabalho é “Sequenciamento de nova geração e sua aplicação no aconselhamento genético na Síndrome de Waardenburg”
 +
 +
 +http://lattes.cnpq.br/2401488457657302
 +
 +
 +
 +[[.:exec]]
 +
 +**Proposta A:**
 +
 +A função irá calcular a probabilidade de nascer uma criança afetada a partir de Herança Autossomica Recessiva, utilizando-se da frequências do gene (x), levando-se em conta também os 
 +possíveis cruzamentos entre genótipos heterozigotos e homozigotos.
 +
 +Ao final será dado uma lista com a probabilidade para cada cruzamento, o risco final único e uma tabela exemplificando o risco em função de valores pre-estabelecidos de q e s (coeficiente de seleçao) para observar a mudança do risco de acordo com a mudança desses dois parametros.
 +
 +Essa função é útil no aconselhamento genético de famílias onde há risco de ocorrencia/recorrencia de síndrome genética com herança autossomica recessiva pois fornece de forma rápida calculos de probabilidade muito avançados e complexos que levariam muito tempo para serem feitos à mão.
 +
 +A idéia para essa função foi baseada na aula do Professor Dr. Paulo Otto, onde ele discorre sobre este assunto no livro (http://www.ib.usp.br/~otto/downloads/pdf_otto/riesgos-otto.pdf) (página 6)
 +
 +Planejamento da função:
 +
 +Entrada: a função ira requerer a frequencia do gene e o coeficiente de seleçao. 
 +
 +Argumentos:
 +x = Frequencia do gene recessivo (se 1%, então x=1)
 +s = Coeficiente de seleção (varia de 0 a 1)
 +
 +Pseudo – codigo:
 +
 +1- insere em “q” o valor da frequencia do gene em porcentagem (q=x/100)
 +2- tira-se o valor de “p” a partir do valor de “q” (p=1-q)
 +3- é adicionado as formulas para o valor adaptativo (w) e taxa de mutação (µ) (w=1-s  e µ=s*q^2)
 +4- a seguir são utilizadas as formulas do Professor Paulo Otto para estipular as probabilidades desejadas para cada cruzamento:
 +AA x AA = (p^4)*(µ^2)
 +AA x Aa = (2*p^3)*q*µ
 +AA x aa = 2*(p^2)*(q^2)*µ*w
 +Aa x Aa = (p^2)*(q^2)
 +Aa x aa = 2*p*(q^3)*w
 +aa x aa = q^4*w^2
 +5-o resultado final faz o calculo das probabilidades de haver criança afetada para cada tipo de cruzamento, fornece o risco final geral, e será gerado uma tabela exemplificando a variação do risco quando se variam os dois parametros da função.
 +
 +Saída: 
 +- probabilidades de haver criança afetada para cada tipo de cruzamento
 +- risco final geral
 +- tabela exemplificando a variação do risco quando se variam os dois parametros da função.
 +
 +
 +
 +
 +**Proposta B:**
 +
 +A funçao irá filtrar variantes em tabelas geradas pela tecnica do sequenciamento do exoma **a partir do modo de herança** (dominante ou recessivo (0/1 e 1/1 respectivamente)) e **da localização cromossomica** (se em autossomos ou se em cromossomos sexuais). Como default, a função filtra os **tipos de mutação** mais comumente pertinentes (mutaçoes em exons e regiao de splicing). Ainda é possível filtrar a **frequencia** dessas variantes nos bancos de dados, que na funçao é representado pelo banco exac. 
 +
 +**Para sua utilização, é necessario que o usuario ajuste seu arquivo de input ao que é requerido pela função.**
 +
 +Essa função é uma versão resumida do que uma função para filtrar exoma faria, já que a tabela gerada pela técnica é muito extensa e seria inviável a sua conclusão no curto espaço de tempo disponivel pela matéria, mas demonstra que a função pode ser expandida para os outros parâmetros que utilizariam codigos muito similares, alterando-se apenas os caracteres os quais desejam-se filtrar (um exemplo disso são os diversos outros bancos de dados de frequencia, cuja filtragem seria também abaixo de 1%, logo, pouco seria alterado em termos de código para essas outras colunas).
 +
 +A função é de extrema importância na busca por variantes patogênicas que expliquem quadros sindrômicos não solucionados por técnicas tanto mais simples quanto mais baratas, mas que no entanto, sua interpretação é dificultada pela grande abrangência da técnica, que retorna todas as variantes encontradas no indivíduo, inclusive as comuns não patogênicas sem relevância para a clínica.
 +
 +Planejamento da função:
 +
 +Entrada: a função irá requerer o nome do arquivo ou o caminho dos diretorios até o arquivo, a indentificação do que se quer filtrar quanto aos cromossomos, se autossomico ou sexual, o modo de herança, se dominante ou recessivo, e ainda pode-se escolher o valor que se quer filtrar para a frequencia da variante nos bancos de dados.
 +
 +
 +Argumentos:
 +
 +tabela: requer o nome do arquivo ou o caminho dos diretorios até o arquivo e deve estar entre áspas
 +cromossomo       deve ser indicado se a doença que se busca é autossômica ou ligada aos cromossomos sexuais
 +heranca     deve ser indicado o modo de herança da doença, se dominante ou recessiva        
 +exac         valor a ser dado para a filtragem da frequencia das variantes nos bancos de dados (padronizado em abaixo de 1%)
 +
 +Pseudo código:
 +
 +1- le o arquivo onde se encontram as variantes
 +2- filtra a coluna cromossomo a partir de autossomico ou sexual (para autossomico, pega-se aqueles de 1 a 22, para sexual, pega-se X ou Y apenas)
 +3- filtra a coluna do paciente, que indica a presença em um dos alelos (dominante 0/1) ou em ambos os alelos (recessiva 1/1) ou a ausencia (0/0) da variante.
 +4- estabelecido como default, os tipos de mutação a serem filtradas são as mutações que ocorrem em exons e em região de splicing.
 +5- a filtragem da frequencia das variantes nos bancos de dados também está estabelecida em abaixo de 1%, mas a função permite que esse valor seja alterado quando a função é requisitada
 +
 +Saída:
 +
 +Tabela com as linhas que preenchem os critérios de filtragem estabelecidos.
 +Referencia:
 +
 +ERGUN, M. A new method for analysis of whole exome sequencing data (SELIM) depending on variant prioritization. Informatics in Medicine Unlocked 8 (2017) 51-53.
 +
 +
 +
 +
 +
 +<WRAP center round box 60%>
 +
 +Achei a proposta A simples demais, e também não entendi como ela pode ser generalizável para vários tipos de usuários.
 +
 +Meu conselho é que vc torne o plano A mais amplo (por exemplo, fornecendo opções de mais análises e interpretações -que vão exigir manipulações diferentes e mais complexas -, mas que sejam relevantes aos mesmos usuários e que usem dados parecidos ou os mesmos) e apresente algum plano B, que está ausente no arquivo .otf que vc lincou em sua wiki.
 +
 +É muito importante também que você poste seus planos diretamente na wiki, e não na forma de um arquivo .otf (cheque a página do [[http://ecologia.ib.usp.br/bie5782/doku.php?id=01_curso_atual:alunos:trabalho_final:start|trabalho final]] para instruções completas e detalhadas)
 +
 +Para ajudar um pouco mais nesse detalhamento, no dia 15 ou 16 vou entrar aqui de novo pra olhar as modificações do seu pseudo código e te dar mais feedbacks. Depois desse prazo, vc também pode tentar me contatar por whatsapp (por favor não mande áudio) (11) 9-9199-3842 
 +
 +Matheus Januario
 +</WRAP>
 +
 +
 +
 +
 +**Trabalho final**
 +
 +Minha função > <code rsplus> #tabela de exemplo
 +tabela <- data.frame("cromossomo" = 1:8, "mutacao" = c("exonica", "exonica", "splicing", "intronica", "intronica", "exonica", "splicing", "intronica"), "exac" = c(0,NA,0.001, 0.0000001, 0.05, 0.1, 0, NA), "paciente" = c("1/1", "0/1", "0/1", "1/1", "0/0", "0/0", "0/1", "0/1"))
 +tabela[7,1]="y"
 +tabela[8,1]="x"
 +write.table(tabela, "tabela", sep = "\t", quote = F)
 +
 +
 +filtrar = function(tabela, cromossomo, heranca, exac = 0.01)
 +{
 +  #warning para input correto do nome do arquivo e consequente leitura
 +  if(typeof(tabela) != "character") warning("TABELA PRECISA CONTER O CAMINHO DO ARQUIVO ENTRE ÁSPAS")
 +  tabela <- read.table(tabela)
 +  #warning para input correto dos argumentos
 +  if(cromossomo != "autossomico" & cromossomo != "sexual"){warning("'cromossomo' tem que ser igual a 'autossomico' ou 'sexual'")}
 +  
 +  
 +  #filtrando o cromossomo
 +  if(cromossomo == "autossomico"){
 +    tabela = tabela[tabela$cromossomo %in% 1:22, ]
 +  } else {
 +    tabela = tabela[tabela$cromossomo == "x" | tabela$cromossomo == "y", ]
 +  }
 +  
 +  
 +  #warning para input correto dos argumentos
 +  if(heranca != "dominante" & heranca != "recessiva"){warning("'heranca' tem que ser igual a 'dominante' ou 'recessiva'")}
 +  
 +  
 +  #filtrando a heranca (se a variante esta presente no paciente em um alelo ou em ambos)
 +  if(heranca == "dominante"){
 +    tabela = tabela[tabela$paciente == "0/1", ]
 +  } else {
 +    tabela = tabela[tabela$paciente == "1/1", ]
 +  }
 +  
 +  
 +  
 +  ####DEFAULT#####
 +  
 +  #filtrando o tipo de mutaçao
 +  tabela = tabela[tabela$mutacao == "exonica" | tabela$mutacao == "splicing", ]
 +  
 +  
 +  #filtrar exac
 +  
 +  tabela = tabela[tabela$exac <= exac | is.na(tabela$exac), ]
 +
 +
 +  return(tabela)
 +  
 +}
 +
 +filtrar(tabela = "tabela", cromossomo = "autossomico", heranca = "dominante")
 +</code>
 +
 +Help da função > <code rsplus>
 +modelo                package:unknown                R Documentation
 +
 +Função para filtrar variantes possivelmente patogênicas em arquivos de Exoma
 +
 +Description:
 +
 +     A função filtra as variantes de arquivos de exoma baseando-se pela variável de a doença ser ligada aos cromossomos autossomicos, ou ligada aos cromossomos sexuais e pelo modo de herança, se recessivo, então a coluna do paciente mostrará 1/1, se dominante 0/1, se a variante estiver ausente nesse indivíduo, 0/0 e portanto não será de interesse. A coluna “exac” representa os bancos de dados que fornecem a frequencia dessa variante. Se frequente, ela é descartada por se tratar de polimorfismo, se rara e abaixo de 1% (0.01) então é mantida. 
 +
 +
 +Usage:
 +
 +     filtrar(tabela = "nome do arquivo ou o caminho dos diretorios até o arquivo", cromossomo = "autossomico ou sexual", heranca = "dominante ou recessiva")
 +
 +Arguments:
 +
 +tabela: requer o nome do arquivo ou o caminho dos diretorios até o arquivo e deve estar entre áspas
 +cromossomo       deve ser indicado se a doença que se busca é autossômica ou ligada aos cromossomos sexuais
 +heranca     deve ser indicado o modo de herança da doença, se dominante ou recessiva        
 +exac         valor a ser dado para a filtragem da frequencia das variantes nos bancos de dados (padronizado em abaixo de 1%)
 +
 +Value:
 +
 +     Tabela contendo somente as linhas pertinentes à filtragem feita.
 + Na filtragem, o valor dos bancos de dados (exac) podem ser alterados, para permitir que fariantes com frequencias mais altas também apareçam na filtragem, caso desejado.
 +
 +
 +Warning:
 +
 +     É exibido um warning para que o nome correto do arquivo a ser filtrado seja colocado de forma correta na função. 
 + Outros dois warnings podem surgir caso os argumentos para cromossomo e herança sejam digitados de forma errônea.
 +
 +
 +
 +Author(s):
 +
 +     William Bertani Torres
 + e-mail: wiilliiam@hotmail.com 
 +
 +
 +References:
 +
 +ERGUN, M. A new method for analysis of whole exome sequencing data (SELIM) depending on variant prioritization. Informatics in Medicine Unlocked 8 (2017) 51-53.
 +
 +Examples:
 +
 +     filtrar(tabela = "tabela", cromossomo = "autossomico", heranca = "dominante")
 +     filtrar(tabela = "tabela", cromossomo = "sexual", heranca = "dominante")
 +     filtrar(tabela = "tabela", cromossomo = "autossomico", heranca = "recessivo")
 + filtrar(tabela = "tabela", cromossomo = "sexual", heranca = "recessivo")
 +
 +
 +</code>