2010-05-05 13 views
8

Prima di tutto, questo potrebbe essere il Forum sbagliato per questa domanda, in quanto è dannatamente R + Bioconductor specifico. Ecco quello che ho:R + Bioconductor: combinazione di sonde in un ExpressionSet

library('GEOquery') 
GDS = getGEO('GDS785') 
cd4T = GDS2eSet(GDS) 
cd4T <- cd4T[!fData(cd4T)$symbol == "",] 

Ora cd4T è un oggetto ExpressionSet che avvolge una grande matrice con 19794 righe (probesets) e 15 colonne (campioni). La linea finale elimina tutti i probesets che non hanno simboli genetici corrispondenti. Ora il problema è che la maggior parte dei geni in questo set sono assegnati a più di un probe. Si può vedere questo facendo

gene_symbols = factor(fData(cd4T)$Gene.symbol) 
length(gene_symbols)-length(levels(gene_symbols)) 
[1] 6897 

Quindi solo 6897 dei miei 19794 probesets avere probeset unica -> mappature genetiche. Mi piacerebbe in qualche modo combinare i livelli di espressione di ciascun sonde associato a ciascun gene. Non mi interessa molto dell'ID sonda reale per ogni sonda. Mi piacerebbe molto finire con un ExpressionSet che contiene le informazioni unite poiché tutte le mie analisi downstream sono progettate per funzionare con questa classe.

Penso di poter scrivere un codice che lo faccia a mano e creare una nuova espressione impostata da zero. Tuttavia, presumo che questo non possa essere un nuovo problema e che esista un codice per farlo, utilizzando un metodo statisticamente valido per combinare i livelli di espressione genica. Sto indovinando c'è anche un nome corretto per questo, ma i miei google non si mostrano molto utili. Qualcuno può aiutare?

+1

Si consiglia di provare biostar.stackexchange.com - si tratta di un sito di tipo StackOverflow esclusivamente per domande di bioinformatica. –

+0

(anche se penso che questa sia una domanda appropriata anche qui). –

+0

cool - lo hai messo anche su biostar. –

risposta

2

Non sono un esperto, ma da quello che ho visto nel corso degli anni ognuno ha il proprio modo preferito di combinare i probesets. I due metodi che ho visto utilizzati di più su larga scala hanno utilizzato solo il probe che ha la varianza maggiore tra la matrice di espressione e l'altro essendo quello di prendere la media dei probe e creare un meta-seset da questo . Per i più piccoli blocchi di sonde ho visto persone usare metodi più intensi che implicano la visualizzazione di trame per-probeset per avere un'idea di cosa sta succedendo ... generalmente quello che succede è che un sonde si rivela essere il "buono" e il il riposo non è molto buono

Non ho visto codice generalizzato per fare questo - come esempio abbiamo recentemente realizzato nel mio laboratorio che alcuni di noi hanno le nostre funzioni private per fare la stessa cosa.

0

La parola che stai cercando è 'nsFilter' in R pacchetto filtro genico. Questa funzione assegna due cose principali, cerca solo il gene entrez ids, il resto dei probeset verrà filtrato. Quando un entrez id ha più probe, il valore più grande verrà mantenuto e gli altri rimossi. Ora hai una matrice mappata id esclusiva del gene entrez. Spero che questo ti aiuti.

Problemi correlati