[BioC] AgiMicroRna - FilterMicroRna question

Neel Aluru naluru at whoi.edu
Mon Jun 14 22:36:57 CEST 2010


Hi Pedro,

I tried following your suggestions and I still an error message as, "FILTERING BY ControlType 
Error in data.frame(as.character(PROBE_ID), as.character(GENE_ID), as.character(probe.chr),  :  arguments imply differing number of rows: 231, 0".

I looked into the mailing list archive and I saw one post there with similar issue but they were trying to modify the source code. I am not an expert in R and do not want to play with source code. 

If you have any suggestions on where the problem lies with the above error message, that will be great. Sorry to bother you on this. 

Thank you very much for your help.

Sincerely, Neel

 The following is the session info.

>  library("AgiMicroRna")
>  targets.micro=readTargets(infile="targets.txt", verbose=TRUE)
 
Target File 
               FileName Treatment GErep Subject
36_DMSO_1 36_DMSO_1.txt    36DMSO     1       1
36_DMSO_2 36_DMSO_2.txt    36DMSO     1       2
36_DMSO_3 36_DMSO_3.txt    36DMSO     1       3
36_TCDD_1 36_TCDD_1.txt    36TCDD     2       1
36_TCDD_2 36_TCDD_2.txt    36TCDD     2       2
36_TCDD_3 36_TCDD_3.txt    36TCDD     2       3
60_DMSO_1 60_DMSO_1.txt    60DMSO     3       1
60_DMSO_2 60_DMSO_2.txt    60DMSO     3       2
60_DMSO_3 60_DMSO_3.txt    60DMSO     3       3
60_TCDD_1 60_TCDD_1.txt    60TCDD     4       1
60_TCDD_2 60_TCDD_2.txt    60TCDD     4       2
60_TCDD_3 60_TCDD_3.txt    60TCDD     4       3
 
> ddaux=read.maimages(files=targets.micro$FileName,source="agilent",
+ 
+                           other.columns=list(IsGeneDetected="gIsGeneDetected",
+ 
+                                                                       IsSaturated="gIsSaturated",
+ 
+                                                                       IsFeatNonUnifOF="gIsFeatNonUnifOL",
+ 
+                                                                       IsFeatPopnOL="gIsFeatPopnOL",
+ 
+                                                                       ChrCoord="chr_coord", 
+ 
+                                                                       BGKmd="gBGMedianSignal",
+ 
+                                                                       BGKus="gBGUsed"),
+ 
+                         columns=list(Rf="gTotalGeneSignal",
+ 
+                                                        Gf="gTotalProbeSignal",
+ 
+                                                        Rb="gMeanSignal",
+ 
+                                                        Gb="gProcessedSignal"),
+ 
+                         verbose=TRUE,sep="\t",quote="")
Read 36_DMSO_1.txt 
Read 36_DMSO_2.txt 
Read 36_DMSO_3.txt 
Read 36_TCDD_1.txt 
Read 36_TCDD_2.txt 
Read 36_TCDD_3.txt 
Read 60_DMSO_1.txt 
Read 60_DMSO_2.txt 
Read 60_DMSO_3.txt 
Read 60_TCDD_1.txt 
Read 60_TCDD_2.txt 
Read 60_TCDD_3.txt 
> names(ddaux)
[1] "R"       "G"       "Rb"      "Gb"      "targets" "genes"   "source"  "other"  
> names(ddaux$genes)
 [1] "Row"            "Col"            "Start"          "Sequence"       "ProbeUID"       "ControlType"   
 [7] "ProbeName"      "GeneName"       "SystematicName" "Description" 
  
> dd=readMicroRnaAFE(targets.micro, verbose=TRUE)
Read 36_DMSO_1.txt 
Read 36_DMSO_2.txt 
Read 36_DMSO_3.txt 
Read 36_TCDD_1.txt 
Read 36_TCDD_2.txt 
Read 36_TCDD_3.txt 
Read 60_DMSO_1.txt 
Read 60_DMSO_2.txt 
Read 60_DMSO_3.txt 
Read 60_TCDD_1.txt 
Read 60_TCDD_2.txt 
Read 60_TCDD_3.txt 
 
  RGList: 
	dd$R:		'gTotalGeneSignal'  
	dd$G:		'gTotalProbeSignal'  
	dd$Rb:		'gMeanSignal'  
	dd$Gb:		'gProcessedSignal'  
 
> dd$genes=ddaux$genes[,c(6,7,8)]
> cvArray(dd, "MeanSignal", targets.micro, verbose=TRUE)
Foreground: MeanSignal 

	FILTERING BY ControlType FLAG 

 RAW DATA: 			 5335 
 PROBES without CONTROLS: 	 4620 
---------------------------------- 
  (Non-CTRL) Unique Probe:  490 
  (Non-CTRL) Unique Genes:  231 
---------------------------------- 
DISTRIBUTION OF REPLICATED NonControl Probes 
reps
  5   6   7  10 
 20  18  36 416 
------------------------------------------------------ 
Replication at Probe level- MEDIAN  CV 
36_DMSO_1 36_DMSO_2 36_DMSO_3 36_TCDD_1 36_TCDD_2 36_TCDD_3 60_DMSO_1 60_DMSO_2 60_DMSO_3 60_TCDD_1 60_TCDD_2 
    0.078     0.081     0.091     0.081     0.077     0.067     0.076     0.066     0.103     0.073     0.086 
60_TCDD_3 
    0.069 
------------------------------------------------------ 
DISTRIBUTION OF REPLICATED Noncontrol Genes 
reps
 20 
231 
------------------------------------------------------ 
> ddTGS.rma = rmaMicroRna(dd, normalize=TRUE, background=FALSE) 
Calculating Expression
> ddPROC = filterMicroRna(ddTGS.rma, dd, control = TRUE, IsGeneDetected = TRUE, wellaboveNEG = FALSE, limIsGeneDetected = 50, limNEG = 25, makePLOT = FALSE, targets.micro, verbose = TRUE)
FILTERING PROBES BY FLAGS 


FILTERING BY ControlType 
Error in data.frame(as.character(PROBE_ID), as.character(GENE_ID), as.character(probe.chr),  : 
  arguments imply differing number of rows: 231, 0




On Jun 2, 2010, at 5:32 AM, Pedro López Romero wrote:

> Hi Neel, 
> Try to use readMicroRnaAFE(targets,verbose=TRUE) to load your data into R instead of calling read.maimages() by yourself. This will solve your problem
> 
> Cheers
> 
> p.- 
> 
> 
> -----Mensaje original-----
> De: Neel Aluru [mailto:naluru at whoi.edu] 
> Enviado el: Tuesday, June 01, 2010 7:34 PM
> Para: Martin Morgan
> CC: bioc; Pedro López Romero
> Asunto: Re: [BioC] AgiMicroRna - FilterMicroRna question
> 
> Thanks, Martin. I have contacted Pedro today and hopefully he will get a chance to see my mail. In the mean time I will follow your suggestions.
> 
> Thanks once again.
> 
> Neel
> 
> On Jun 1, 2010, at 1:31 PM, Martin Morgan wrote:
> 
>> On 06/01/2010 06:43 AM, Neel Aluru wrote:
>>> Hello,
>>> 
>>> I have asked this question before and haven't heard from anyone. Sorry for reposting it as I spent lot of time on it and still cannot figure it out. I need to filter the data before statistical analysis so as to remove the genes that are not detected. 
> 
>>> 
>>>> ddPROC = filterMicroRna(ddTGS.rma, dd.micro, control = TRUE, 
>>> IsGeneDetected = TRUE, wellaboveNEG = FALSE, limIsGeneDetected = 50, 
>>> limNEG = 25, makePLOT = FALSE, targets.micro, verbose = TRUE)
>>> FILTERING PROBES BY FLAGS
>>> 
>>> 
>>> FILTERING BY ControlType
>>> Error in matrix(ddFILT$other$gIsGeneDetected, nrow = dim(ddFILT)[1], 
>>> ncol = dim(ddFILT)[2]) :
>>> attempt to set an attribute on NULL
>>> 
>>> 
>>> I checked my data files to see if the required column (IsGeneDetected) is present and it is there. But, for some reason it is not detecting and I do not understand the error message I am getting. If anyone can explain the error message to me that would be great. I have posted the session info below. 
>> 
>> Hi Neel -- I can't help with specifics, but
>> 
>>> matrix(NULL)
>> Error in matrix(NULL) : attempt to set an attribute on NULL
>> 
>> so the proximate cause of the error message is likely that
>> ddFILT$other$gIsGeneDetected is equal to NULL, e.g., because it doesn't
>> exist. You can investigate this by inspecting the code, e.g.,
>> 
>>> options(error=browser())
>> 
>> and then re-running your code. See ?browser; when done use
>> options(error=NULL). Before that I'd revisit the help page for this
>> function and double-check that you are providing appropriate arguments.
>> 
>> I've added
>> 
>>> packageDescription('AgiMicroRna')$Maintainer
>> [1] "Pedro Lopez-Romero <plopez at cnic.es>"
>> 
>> to the email, as Pedro in the best position to help you.
>> 
>> Martin
>> 
>>> Thank you very much,
>>> 
>>> Neel
>>> 
>>> 
>>> 
>>> 
>>> Session Info
>>> 
>>>> library("AgiMicroRna")
>>>> targets.micro=readTargets(infile="targets.txt", verbose=TRUE)
>>> 
>>> Target File
>>>              FileName Treatment GErep Subject
>>> 36_DMSO_1 36_DMSO_1.txt    36DMSO     1       1
>>> 36_DMSO_2 36_DMSO_2.txt    36DMSO     1       2
>>> 36_DMSO_3 36_DMSO_3.txt    36DMSO     1       3
>>> 36_TCDD_1 36_TCDD_1.txt    36TCDD     2       1
>>> 36_TCDD_2 36_TCDD_2.txt    36TCDD     2       2
>>> 36_TCDD_3 36_TCDD_3.txt    36TCDD     2       3
>>> 60_DMSO_1 60_DMSO_1.txt    60DMSO     3       1
>>> 60_DMSO_2 60_DMSO_2.txt    60DMSO     3       2
>>> 60_DMSO_3 60_DMSO_3.txt    60DMSO     3       3
>>> 60_TCDD_1 60_TCDD_1.txt    60TCDD     4       1
>>> 60_TCDD_2 60_TCDD_2.txt    60TCDD     4       2
>>> 60_TCDD_3 60_TCDD_3.txt    60TCDD     4       3
>>> 
>>>> dd.micro=read.maimages(targets.micro$FileName, 
>>> columns=list(R="gTotalGeneSignal",G= 
>>> "gTotalProbeSignal",Rb="gMeanSignal", Gb="gProcessedSignal"), 
>>> annotation=c("ProbeUID","ControlType","ProbeName","GeneName","SystematicName", 
>>> "sequence", "accessions","probe_mappings", 
>>> "gIsGeneDetected","gIsSaturated","gIsFeatNonUnifOL", 
>>> "gIsFeatPopnOL","chr_coord","gBGMedianSignal","gBGUsed"))
>>> Read 36_DMSO_1.txt
>>> Read 36_DMSO_2.txt
>>> Read 36_DMSO_3.txt
>>> Read 36_TCDD_1.txt
>>> Read 36_TCDD_2.txt
>>> Read 36_TCDD_3.txt
>>> Read 60_DMSO_1.txt
>>> Read 60_DMSO_2.txt
>>> Read 60_DMSO_3.txt
>>> Read 60_TCDD_1.txt
>>> Read 60_TCDD_2.txt
>>> Read 60_TCDD_3.txt
>>>> cvArray(dd.micro, "MeanSignal", targets.micro, verbose=TRUE)
>>> Foreground: MeanSignal
>>> 
>>>       FILTERING BY ControlType FLAG
>>> 
>>> RAW DATA:                       5335
>>> PROBES without CONTROLS:        4620
>>> ----------------------------------
>>> (Non-CTRL) Unique Probe:  490
>>> (Non-CTRL) Unique Genes:  231
>>> ----------------------------------
>>> DISTRIBUTION OF REPLICATED NonControl Probes
>>> reps
>>> 5   6   7  10
>>> 20  18  36 416
>>> ------------------------------------------------------
>>> Replication at Probe level- MEDIAN  CV
>>> 36_DMSO_1 36_DMSO_2 36_DMSO_3 36_TCDD_1 36_TCDD_2 36_TCDD_3 60_DMSO_1 
>>> 60_DMSO_2 60_DMSO_3
>>>   0.078     0.081     0.091     0.081     0.077     0.067 
>>> 0.076     0.066     0.103
>>> 60_TCDD_1 60_TCDD_2 60_TCDD_3
>>>   0.073     0.086     0.069
>>> ------------------------------------------------------
>>> DISTRIBUTION OF REPLICATED Noncontrol Genes
>>> reps
>>> 20
>>> 231
>>> ------------------------------------------------------
>>>> ddTGS.rma = rmaMicroRna(dd.micro, normalize=TRUE, background=FALSE)
>>> Calculating Expression
>>>> ddPROC = filterMicroRna(ddTGS.rma, dd.micro, control = TRUE, 
>>> IsGeneDetected = TRUE, wellaboveNEG = FALSE, limIsGeneDetected = 50, 
>>> limNEG = 25, makePLOT = FALSE, targets.micro, verbose = TRUE)
>>> FILTERING PROBES BY FLAGS
>>> 
>>> 
>>> FILTERING BY ControlType
>>> Error in matrix(ddFILT$other$gIsGeneDetected, nrow = dim(ddFILT)[1], 
>>> ncol = dim(ddFILT)[2]) :
>>> attempt to set an attribute on NULL
>>> 
>>>> MMM = ddTGS.rma$Rb
>>>> colnames(MMM) = colnames(dd.micro$Rb)
>>>> maintitle='TGS.rma'
>>>> colorfill='blue'
>>>> ddaux=ddTGS.rma
>>>> ddaux$G=MMM
>>>> mvaMicroRna(ddaux, maintitle, verbose=TRUE)
>>> 
>>> ------------------------------------------------------
>>> mvaMicroRna info:
>>> FEATURES :      231
>>> POSITIVE CTRL:          12
>>> NEGATIVE CTRL:          7
>>> STRUCTURAL:             3
>>>> rm(ddaux)
>>>> RleMicroRna(MMM,"RLE TGS.rma", colorfill)
>>>> boxplotMicroRna(MMM, maintitle, colorfill)
>>>> plotDensityMicroRna(MMM, maintitle)
>>>> spottypes = readSpotTypes()
>>>> ddTGS.rma$genes$Status = controlStatus(spottypes, ddTGS.rma)
>>> Matching patterns for: ProbeName GeneName
>>> Found 231 gene
>>> Found 1 BLANK
>>> Found 1 Blank
>>> Found 0 blank
>>> Found 6 positive
>>> Found 0 negative
>>> Found 0 flag1
>>> Found 0 flag2
>>> Found 6 flag3
>>> Found 5 flag4
>>> Found 1 flag5
>>> Setting attributes: values
>>>> i = ddTGS.rma$genes$Status == "gene"
>>>> esetPROC = esetMicroRna(ddTGS.rma[i,], targets.micro, 
>>> makePLOT=TRUE, verbose = TRUE)
>>> outPUT DATA: esetPROC
>>> Features  Samples
>>>    231       12
>>>> design=model.matrix(~-1+treatment)
>>>> print(design)
>>>  treatment36DMSO treatment36TCDD treatment60DMSO treatment60TCDD
>>> 1                1               0               0               0
>>> 2                1               0               0               0
>>> 3                1               0               0               0
>>> 4                0               1               0               0
>>> 5                0               1               0               0
>>> 6                0               1               0               0
>>> 7                0               0               1               0
>>> 8                0               0               1               0
>>> 9                0               0               1               0
>>> 10               0               0               0               1
>>> 11               0               0               0               1
>>> 12               0               0               0               1
>>> attr(,"assign")
>>> [1] 1 1 1 1
>>> attr(,"contrasts")
>>> attr(,"contrasts")$treatment
>>> [1] "contr.treatment"
>>> 
>>>> fit=lmFit(esetPROC, design)
>>>> cont.matrix = makeContrasts(treatment36TCDDvstreatment36DMSO = 
>>> treatment36TCDD-treatment36DMSO, treatment60TCDDvstreatment60DMSO = 
>>> treatment60TCDD-treatment60DMSO,treatment60TCDDvstreatment36TCDD = 
>>> treatment60TCDD-treatment36TCDD, treatment60DMSOvstreatment36DMSO = 
>>> treatment60DMSO-treatment36DMSO, levels=design)
>>>> print(cont.matrix)
>>>                Contrasts
>>> Levels            treatment36TCDDvstreatment36DMSO 
>>> treatment60TCDDvstreatment60DMSO
>>> treatment36DMSO                               -1 
>>>            0
>>> treatment36TCDD                                1 
>>>            0
>>> treatment60DMSO                                0 
>>>           -1
>>> treatment60TCDD                                0 
>>>            1
>>>                Contrasts
>>> Levels            treatment60TCDDvstreatment36TCDD 
>>> treatment60DMSOvstreatment36DMSO
>>> treatment36DMSO                                0 
>>>           -1
>>> treatment36TCDD                               -1 
>>>            0
>>> treatment60DMSO                                0 
>>>            1
>>> treatment60TCDD                                1 
>>>            0
>>>> fit2 = contrasts.fit(fit,cont.matrix)
>>>> print(head(fit2$coeff))
>>>           Contrasts
>>>            treatment36TCDDvstreatment36DMSO treatment60TCDDvstreatment60DMSO
>>> dre-let-7a                      0.038640984                      0.013333873
>>> dre-let-7b                      0.074038749                     -0.031608286
>>> dre-let-7c                      0.026244357                     -0.005682488
>>> dre-let-7d                      0.067340768                      0.055567054
>>> dre-let-7e                      0.004569306                      0.136348664
>>> dre-let-7f                      0.042880109                      0.085568058
>>>           Contrasts
>>>            treatment60TCDDvstreatment36TCDD treatment60DMSOvstreatment36DMSO
>>> dre-let-7a                        1.7358343                       1.76114142
>>> dre-let-7b                        0.1366920                       0.24233899
>>> dre-let-7c                        0.9920976                       1.02402449
>>> dre-let-7d                        0.8098432                       0.82161694
>>> dre-let-7e                        0.1186829                      -0.01309647
>>> dre-let-7f                        1.1245878                       1.08189990
>>>> fit2 = eBayes(fit2)
>>>> fit2 = basicLimma(esetPROC, design, cont.matrix, verbose = TRUE)
>>> DATA
>>> Features  Samples
>>>    231       12
>>> 
>>>> DE = getDecideTests(fit2, DEmethod = "separate", MTestmethod = 
>>> "BH", PVcut = 0.1, verbose = TRUE)
>>> 
>>> ------------------------------------------------------
>>> Method for Selecting DEGs: separate
>>> Multiple Testing  method:  BH - pval 0.1
>>> 
>>>    treatment36TCDDvstreatment36DMSO treatment60TCDDvstreatment60DMSO
>>> UP                                  0                                5
>>> DOWN                                0                                1
>>>    treatment60TCDDvstreatment36TCDD treatment60DMSOvstreatment36DMSO
>>> UP                                 56                               51
>>> DOWN                               80                               91
>>> ------------------------------------------------------
>>>> pvalHistogram(fit2, DE, PVcut = 0.1, DEmethod ="separate", 
>>> MTestmethod="BH",cont.matrix, verbose= TRUE)
>>>> significantMicroRna(esetPROC, ddTGS.rma, targets.micro, fit2, 
>>> cont.matrix, DE, DEmethod = "separate", MTestmethod= "BH", PVcut = 
>>> 0.1, Mcut=0, verbose=TRUE)
>>> ------------------------------------------------------
>>> CONTRAST:  1  -  treatment36TCDDvstreatment36DMSO
>>> 
>>> Error in data.frame(PROBE_ID, as.character(GENE_ID), 
>>> as.character(chr_coord),  :
>>> arguments imply differing number of rows: 231, 0
>>> 
>>> 
>>> 
>>> 
>>> Neel Aluru
>>> Postdoctoral Scholar
>>> Biology Department
>>> Woods Hole Oceanographic Institution
>>> Woods Hole, MA 02543
>>> USA
>>> 508-289-3607
>>> 
>>> _______________________________________________
>>> Bioconductor mailing list
>>> Bioconductor at stat.math.ethz.ch
>>> https://stat.ethz.ch/mailman/listinfo/bioconductor
>>> Search the archives: http://news.gmane.org/gmane.science.biology.informatics.conductor
>> 
>> 
>> -- 
>> Martin Morgan
>> Computational Biology / Fred Hutchinson Cancer Research Center
>> 1100 Fairview Ave. N.
>> PO Box 19024 Seattle, WA 98109
>> 
>> Location: Arnold Building M1 B861
>> Phone: (206) 667-2793
>> 
> 
> Neel Aluru
> Postdoctoral Scholar
> Biology Department
> Woods Hole Oceanographic Institution
> Woods Hole, MA 02543
> USA
> 508-289-3607
> 
> 
> 
> 
> *************** AVISO LEGAL ***************
> Este mensaje va dirigido, de manera exclusiva, a su destinatario y
> contiene información confidencial y sujeta al secreto profesional,
> cuya divulgación no está permitida por la ley. En caso de haber
> recibido este mensaje por error, le rogamos que, de forma inmediata,
> nos lo comunique mediante correo electrónico remitido a nuestra
> atención o a través del teléfono (+34 914531200) y proceda a su
> eliminación, así como a la de cualquier documento adjunto al mismo.
> Asimismo, le comunicamos que la distribución, copia o utilización de
> este mensaje, o de cualquier documento adjunto al mismo, cualquiera
> que fuera su finalidad, están prohibidas por la ley. Le informamos,
> como destinatario de este mensaje, que el correo electrónico y las
> comunicaciones por medio de Internet no permiten asegurar ni
> garantizar la confidencialidad de los mensajes transmitidos, así como
> tampoco su integridad o su correcta recepción, por lo que el CNIC no
> asume responsabilidad alguna por tales circunstancias. Si no
> consintiese la utilización del correo electrónico o de las
> comunicaciones vía Internet le rogamos nos lo comunique y ponga en
> nuestro conocimiento de manera inmediata.
> 
> *************** LEGAL NOTICE **************
> This message is intended exclusively for the person to whom it is
> addressed and contains privileged and confidential information
> protected from disclosure by law. If you are not the addressee
> indicated in this message, you should immediately delete it and any
> attachments and notify the sender by reply e-mail or by phone
> (+34 914531200). In such case, you are hereby notified that any
> dissemination, distribution, copying or use of this message or any
> attachments, for any purpose, is strictly prohibited by law. We
> hereby inform you, as addressee of this message, that e-mail and
> Internet do not guarantee the confidentiality, nor the completeness
> or proper reception of the messages sent and, thus, CNIC does not
> assume any liability for those circumstances. Should you not agree
> to the use of e-mail or to communications via Internet, you are
> kindly requested to notify us immediately.
> 

Neel Aluru
Postdoctoral Scholar
Biology Department
Woods Hole Oceanographic Institution
Woods Hole, MA 02543
USA
508-289-3607



More information about the Bioconductor mailing list