Pregunta:
¿Cómo puedo construir una ruta de red de proteínas a partir de un archivo de cuantificación de expresión génica?
0x90
2017-06-08 12:21:27 UTC
view on stackexchange narkive permalink

Supongamos que he encontrado el 0.01% de los genes más frecuentes en un archivo de expresión génica.

Digamos, estos son 10 genes y quiero estudiar las interacciones proteína-proteína, la red y la ruta de proteínas.

Pensé en usar string-db o interactome, pero no estoy seguro de cuál sería una forma plausible de abordar este problema y construir la red de proteínas, etc. ¿Hay otras bases de datos más adecuadas?

¿Cómo puedo crear una red o un gráfico matemático para estos datos?

Cuatro respuestas:
Iakov Davydov
2017-06-08 13:24:58 UTC
view on stackexchange narkive permalink

Hay varias formas de hacer esto y varias bases de datos de interacción de proteínas además de las que mencionaste, como BioGRID o IntAct. Las bases de datos de interacciones son diferentes en cuanto a cómo se definen las interacciones, a veces puede ser evidencia experimental de interacción, a veces coexpresión, predicciones basadas en ortología, etc.

No existe una solución única para su problema. Para String-DB puede usar su paquete R STRINGdb.

  # string-dblibrary (STRINGdb) # recuperar el gráfico completo para H. sapiensstring_db <- STRINGdb $ new ( version = "10", especie = 9606, score_threshold = 400, input_directory = "") # definir genes de interés genes.of.interest <- ... # obtener sus vecinos vecinos <- string_db $ get_neighbors (genes.of.interest) # obtener el subgrafo de interés (tus genes + sus vecinos) my.subgraph <- string_db $ get_subnetwork (c (genes.of.interest, vecinos)) # mira cuántos genes e interacciones tienes mi.subgraph  

Si prefiere la GUI, podría considerar usar Cytoscape. Tienen varios complementos para bases de datos de interacción, p. Ej. para STRINGdb. Allí puede proporcionar su lista de genes y obtener una red con unos pocos clics.

Tenga en cuenta que STRING está * muy * sucio. si desea usarlo para construir una red, es esencial filtrar los resultados por método de detección (tiene muchas, muchas interacciones inferidas).
terdon
2017-06-08 15:31:34 UTC
view on stackexchange narkive permalink

Muchas bases de datos de interacción ahora funcionan con archivos en formato PSI. La mayoría de las bases de datos principales pueden hacer esto y EBI ha creado PSICQUIC View, una página muy útil donde puede consultar varias bases de datos a la vez.

Tenga en cuenta que es muy importante limitar los resultados según el método de detección. Hay mucho ruido en las bases de datos de interacción de proteínas. Dependiendo de lo que desee hacer, puede limitar solo las interacciones verificadas experimentalmente o solo las interacciones binarias directas (por lo tanto, excluya los resultados de, por ejemplo, análisis de ChIP que también pueden encontrar complejos), etc.

Eso dicho, aquí hay un script de ejemplo simple que consultará la base de datos APID usando su servicio PSICQUIC:

  #! / usr / bin / perluse strict; use advertencias ; use LWP :: Simple; my @proteins; ## Leer una lista de proteínas objetivo, una por línea (esto espera nombres de UniProt) abrir (my $ fh, "$ ARGV [0]") o morir "Necesita una lista de proteínas como primer argumento: $! \ n "; while (< $ fh>) {chomp; push @proteins, $ _;} close ($ fh); ## Obtener interacciones humanas solamente my $ especie = "9606"; ## Obtener las interacciones para cada proteína objetivo antes de cada $ proteína (@proteins) {my $ queryUrl = "http : //cicblade.dep.usal.es/psicquic-ws/webservices/current/search/query/$protein "; $ queryUrl. = "? taxidA: $ especie% 20ANDtaxidB: $ especie"; my $ intentos = 1; mi $ contenido = obtener $ queryUrl; while ($ tries< = 10) {if (definido ($ contenido)) {$ tries = 11; } else {print STDERR "No se pudo recuperar $ queryUrl, volviendo a intentar ($ intentos) ... \ n"; $ contenido = obtener $ queryUrl; } $ intentos ++; } # Ahora enumere todas las interacciones my @lines = split (/ \ n /, $ content); my $ LINES = @lines; my $ count = 0; para mi $ line (@lines) {$ count ++; my @flds = split (/ \ t /, $ línea); # dividir líneas delimitadas por tabuladores # dividir campos de una línea PSIMITAB 2.5
my ($ idA, $ idB, $ altIdA, $ altIdB, $ aliasA, $ aliasB, $ detMethod, $ autor, $ pub, $ orgA, $ orgB, $ intType, $ sourceDb, $ intID, $ conf) = @flds ; ## Aquí puede agregar lógica para limitar las interacciones mediante códigos de método de detección específicos ($ detMethod) ## o base de datos de origen, etc. ## Imprimir imprimir "$ line \ n"}}  

Lo probé usando un archivo con el ID de UniProt para TP53 humano (P04637) y devuelve una lista de 3988 interacciones (mostrando 10 resultados seleccionados al azar a continuación):

  $ foo.pl names .txt | shuf -n 10uniprotkb: Q9BWC9 uniprotkb: P04637 - - uniprotkb: CCDC106 (gen_name) uniprotkb: TP53 (gene_name) psi-mi: "MI: 0007" (anti-coinmunoprecipitación de etiquetas) Zhou, J. et al. (2010) publicado: 20159018 taxid: 9606 (Homo sapiens) taxid: 9606 (Homo sapiens) - psi-mi: "MI: 0469" (intacto) intacto: EBI-7812926 -uniprotkb: P04637 uniprotkb: O15126 - - uniprotkb: TP53 (gene_name) uniprotkb: SCAMP1 (gene_name) psi-mi: "MI: 0018" (dos híbridos) Lim, J. et al. (2006) pubmed: 16713569 taxid: 9606 (Homo sapiens) taxid: 9606 (Homo sapiens) - psi-mi: "MI : 0463 "(biogrid) biogrid: 720622 -uniprotkb: P63165 uniprotkb: P04637 - - uniprotkb: SUMO1 (gen_name) uniprotkb: TP53 (gene_name) psi-mi:" MI: 0018 "(dos híbridos) Minty, A. et al. (2000) pubmed: 10961991 taxid: 9606 (Homo sapiens) taxid: 9606 (Homo sapiens) - psi-mi: "MI: 0463" (biogrid) biogrid: 262339 -uniprotkb: P04637 uniprotkb: P31350 - - uniprotkb: TP53 (gene_name ) uniprotkb: RRM2 (gene_name) psi-mi: "MI: 0416 "(microscopía de fluorescencia) Xue, L. et al. (2003) pubmed: 12615712 taxid: 9606 (Homo sapiens) taxid: 9606 (Homo sapiens) - psi-mi:" MI: 0465 "(dip) dip: DIP-40167E -
uniprotkb: P04637 uniprotkb: Q00987 - - uniprotkb: TP53 (gen_name) uniprotkb: MDM2 (gene_name) psi-mi: "MI: 0004" (tecnología de cromatografía de afinidad) Dai, MS. et al. (2004) pubmed: 15308643 taxid: 9606 (Homo sapiens) taxid: 9606 (Homo sapiens) - psi-mi: "MI: 0463" (biogrid) biogrid: 478073 -uniprotkb: Q99576 uniprotkb: P04637 - - uniprotkb: TSC22D3 (gene_name) uniprotkb: TP53 (gene_name) psi-mi: "MI: 0428" (técnica de imagen) Ayroldi, E. et al. (2015) publicado: 25168242 taxid: 9606 (Homo sapiens) taxid: 9606 (Homo sapiens) - psi-mi: "MI: 0463" (biogrid) biogrid: 1255896 -uniprotkb: P04637 uniprotkb: Q00987 - - uniprotkb: TP53 (gene_name) uniprotkb: MDM2 (gene_name) psi-mi: "MI: 0415" (estudio enzimático) Lui, K. et al. (2013) publicado: 23572512 taxid: 9606 (Homo sapiens) taxid: 9606 (Homo sapiens) - psi-mi: "MI: 0463" (biogrid) biogrid: 859223 -uniprotkb: P25685 uniprotkb: P04637 - - uniprotkb: DNAJB1 (gene_name) uniprotkb: TP53 (gene_name) psi-mi: "MI: 0004" (tecnología de cromatografía de afinidad) Qi, M. et al. (2014) pubmed: 24361594 taxid: 9606 (Homo sapiens) taxid: 9606 (Homo sapiens) - psi-mi: "MI: 0463" (biogrid) bi ogrid: 938952 -uniprotkb: P04637 uniprotkb: Q8IW41 - - uniprotkb: TP53 (gen_name) uniprotkb: MAPKAPK5 (gene_name) psi-mi: "MI: 0424" (ensayo de proteína quinasa) Sun, P. et al. (2007) publicado: 17254968 taxid: 9606 (Homo sapiens) taxid: 9606 (Homo sapiens) - psi-mi: "MI: 0469" (intacto) intacto: EBI-1202077 -uniprotkb: Q13526 uniprotkb: P04637 - - uniprotkb: PIN1 (gene_name) uniprotkb TP53 (gene_name) psi-mi: "MI: 0096" (pull down) Mantovani, F. et al. (2007) publicado: 17906639 taxid: 9606 (Homo sapiens) taxid: 9606 (Homo sapiens) - psi-mi: " MI: 0469 "(intacto) intacto: EBI-6112688 -  
Gracias, no estoy seguro de qué es EBI ni cómo convertir / asignar nombres de genes a una lista de proteínas.
@0x90 EBI es solo el [Instituto Europeo de Bioinformática] (https://www.ebi.ac.uk/). Me temo que el mapeo siempre es complicado y uno de los principales problemas prácticos para este tipo de análisis es que tanto los genes como las proteínas tienen muchos, muchos identificadores diferentes en las diferentes bases de datos. Sin embargo, existen muchas herramientas que pueden ayudarlo a mapear. Por ejemplo: [1] (http://www.uniprot.org/uploadlists/), [2] (https://david.ncifcrf.gov/conversion.jsp).
jaslibra
2017-06-16 00:21:32 UTC
view on stackexchange narkive permalink

Si ejecuta este Rscript usando el nombre del gen como argumento, obtendrá un archivo con la ruta escrita en el directorio.

  #! / usr / bin / Rscriptargs = commandArgs (trailingOnly = TRUE) biblioteca (paxtoolsr) id <- args [1] write.table (graphPc (source = id, kind = 'Neighborhood', format = 'BINARY_SIF', verbose = TRUE), file = paste (id, ' ruta ', sep =' _ '), sep =' \ t ', cita = FALSO)  
Kristoffer Vitting-Seerup
2017-06-16 15:50:45 UTC
view on stackexchange narkive permalink

¿Por qué no utilizar la herramienta en línea de string-db? Allí puede ajustar todos los parámetros de interés, como la confianza de interacción, así como extraer interacciones de proteínas adicionales.

Si crea un usuario, también puede cargar un conjunto de genes de fondo personalizado, lo que significa el análisis de go -Términos y la interconexión que proporciona Sting es utilizable.



Esta pregunta y respuesta fue traducida automáticamente del idioma inglés.El contenido original está disponible en stackexchange, a quien agradecemos la licencia cc by-sa 3.0 bajo la que se distribuye.
Loading...