Salut tout le monde!
Je suis face à un problème sur R que je n'arrive pas à résoudre. Actuellement je travaille via le package GEOquery et je cherche à extraire certaines informations dans les métadonnées.
En particulier, je cherche le type de label du canal utilisé pour l'expérience (par exemple Cye3 ou Cye5). Jusque-là pas de vrai problème puisque j'arrive à obtenir cette entrée. Je vous mets ci-dessous un bout de code:
et c'est là que se trouve mon problème :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 >library(GEOquery) > gse<-getGEO("GSE2253",GSEMatrix=TRUE,destdir=".") >gse<-gse[[1]] >gse$label_ch1[1] V2 Levels: According to Affymetrix protocol (biotin)
Ce fichier GSE est un fichier texte, et dans la ligne qui correspond au label (!Sample_label_ch1) il n'y a pas de valeur rentrée. Du coup je suis bien embêtée puisque je travaille en fonction de cette valeur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 > is.na(gse$label_ch1[1]) V2 FALSE > is.null(gse$label_ch1[1]) [1] FALSE
Si rien n'est dit sur le canal, j'indique qu'il n'est pas spécifié, sinon je donne la valeur en question. Et dans le cas de ce fichier, eh bien je me retrouve avec du vide
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 if(is.na(gse$label_ch1[1])){ color<-"Non specified" } else { label<-gse$label_ch1[1] }
J'ai essayé de passer gse$label_ch1[1] avec as.character et de faire tourner le if avec un =="", mais ça ne fonctionne pas non plus.
Ça serait super si quelqu'un avait une idée pour m'aider ^^
Merci d'avance!
Partager