Hi Henrik,

Thanks  for replying.

We are not completely sure if its the issue with the version of 
aroma.affymetrix or not.

We were trying to use the function *mufColumn* from FIRMAGene library on 
*HTA* platform with *Brain array gene level cdf. *However it didn't work and 
we got the following error:

Error in mufC(x) : NA/NaN/Inf in foreign function call (arg 1)

On exploring further we realised we had NaN in our residual object due to 
which mufColumn was throwing an error. It seems like aroma.affymetrix 
settings are creating issues in our analysis.

Since it is HTA platform so we have greater number of probes for some of 
the units(genes with more then 500 probes/cells). It seems like for *few of 
the genes* which have  number of probes greater then 500 it does not 
estimate any probe level data due to which residual object has NaNs in it 
(it is always the last probe in these genes that has NaN residue).  What we 
are not clear is why does it work for some genes with more then  500 probes 
and not for others? Do you have any idea about it?

Also when we  changed the aroma settings as follows:

setOption(aromaSettings, "models/RmaPlm/medianPolishThreshold", c(3500,6))

It works fine and we are able to compute mufScores. Though we think we have 
solved the error we are still not clear about what is exactly the reason 
for this dependency on settings. Also we are not very clear about the 
explanation given about aroma settings on the this link 
http://www.aroma-project.org/settings/. 

Following is the code:

library(affxparser)
library(aroma.affymetrix)
library(FIRMAGene)
library(fdrtool)
library("limma")
library("statmod")

verbose <- Arguments$getVerbose(-30); timestampOn(verbose)


setOption(aromaSettings, "models/RmaPlm/medianPolishThreshold", c(3500,6))
setOption(aromaSettings, "memory/ram", 4.0)

getOption(aromaSettings)

#Provide the name of folder in rawData with CEL files 
name <- 'TWIN'

chipType <- 'hta20_Hs_ENSG_19'

cdf <- AffymetrixCdfFile$byChipType(chipType, tags="binary")
print(cdf)

cs <- AffymetrixCelSet$byName("TWIN", cdf=cdf,verbose=verbose)
setCdf(cs,cdf)

# Background correction
bc <- RmaBackgroundCorrection(cs)
print(bc)
csBC <- process(bc,verbose=verbose)

# Quantile normalization
qn <- QuantileNormalization(csBC, typesToUpdate="pm")
csN <- process(qn, verbose=verbose)

# convert to unique cell
cdfu <- getUniqueCdf(cdf,verbose=-80)
csNU <- convertToUnique(csN,verbose=-20)

# fit probe level model
plmTr <- ExonRmaPlm(csN, mergeGroups=TRUE)
print(plmTr)
fit(plmTr, verbose=verbose)

# get Gene-level expression intensities
cesTr <- getChipEffectSet(plmTr)
trFit <- extractDataFrame(cesTr, addNames=TRUE)

trFit <- data.frame(trFit$unitName, trFit[,6:ncol(trFit)])
colnames(trFit)[colnames(trFit) == 'trFit.unitName'] <- 'gene'

###Calculate Residuals
rs <- calculateResidualSet(plmTr, verbose=verbose)
rsu <- readUnits(rs, verbose = verbose)

nm <- getNames(cs)
cls <- 1:length(nm)

cat("Extracting standardized residuals.\n")

rsu1 <- lapply(rsu,FUN=function(u,cls) {
  r <- log2(u[[1]]$eps)
  m <- mad(r)
  calcMeans(r/m,cls)
},cls=cls)
nProbe <- sapply(rsu,FUN=function(u) nrow(u[[1]]$eps))

rm(rsu)
gco <- gc()


upLimit <-  3485 # the length of unit with maximum number of probes
w <- (nProbe >= minProbes) & (nProbe <= upLimit)
nProbe <- nProbe[w]

mufScores <- t(sapply( rsu1[w], FUN=function(u) mufColumns(u)))

The session info is:

R version 3.1.2 (2014-10-31)
Platform: x86_64-apple-darwin10.8.0 (64-bit)

locale:
[1] en_GB.UTF-8/en_GB.UTF-8/en_GB.UTF-8/C/en_GB.UTF-8/en_GB.UTF-8

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
 [1] stringr_1.0.0           statmod_1.4.21          limma_3.22.7           
 fdrtool_1.2.14          FIRMAGene_0.9.8         aroma.light_2.2.1       
aroma.affymetrix_2.13.1 aroma.core_2.13.0       R.devices_2.13.0       
 R.filesets_2.7.1        R.utils_2.0.2          
[12] R.oo_1.19.0             R.methodsS3_1.7.0       affxparser_1.38.0      

loaded via a namespace (and not attached):
 [1] aroma.apd_0.6.0    base64enc_0.1-3    digest_0.6.8       
DNAcopy_1.40.0     magrittr_1.5       matrixStats_0.14.0 PSCBS_0.44.0       
R.cache_0.11.0     R.huge_0.9.0       R.rsp_0.20.0       stringi_0.4-1     
 tools_3.1.2       

Regards,
S


On Thursday, June 4, 2015 at 5:31:46 PM UTC+1, Henrik Bengtsson wrote:
>
> Hi, 
>
> could you please share the exact calls you are using and elaborate a 
> bit more what makes you think it's not working? That'll help me help 
> you. 
>
> Henrik 
>
> On Thu, Jun 4, 2015 at 6:40 AM, sanjana <sood.s...@gmail.com <javascript:>> 
> wrote: 
> > Hi, 
> > 
> > Our group is working with HTA platform and using  aroma.affymetrix  for 
> the 
> > analysis. We intend to change the RMA median polish threshold in aroma 
> > settings. We are able to achieve this in version 2.13.1 but somehow not 
> in 
> > version 2.13.2? 
> > 
> > Has anyone else experienced  the same thing? Is it possible there is a 
> bug 
> > in the 2.13.2 version? 
> > 
> > Thanks, 
> > 
> > -- 
> > -- 
> > When reporting problems on aroma.affymetrix, make sure 1) to run the 
> latest 
> > version of the package, 2) to report the output of sessionInfo() and 
> > traceback(), and 3) to post a complete code example. 
> > 
> > 
> > You received this message because you are subscribed to the Google 
> Groups 
> > "aroma.affymetrix" group with website http://www.aroma-project.org/. 
> > To post to this group, send email to aroma-af...@googlegroups.com 
> <javascript:> 
> > To unsubscribe and other options, go to 
> http://www.aroma-project.org/forum/ 
> > 
> > --- 
> > You received this message because you are subscribed to the Google 
> Groups 
> > "aroma.affymetrix" group. 
> > To unsubscribe from this group and stop receiving emails from it, send 
> an 
> > email to aroma-affymetr...@googlegroups.com <javascript:>. 
> > For more options, visit https://groups.google.com/d/optout. 
>

-- 
-- 
When reporting problems on aroma.affymetrix, make sure 1) to run the latest 
version of the package, 2) to report the output of sessionInfo() and 
traceback(), and 3) to post a complete code example.


You received this message because you are subscribed to the Google Groups 
"aroma.affymetrix" group with website http://www.aroma-project.org/.
To post to this group, send email to aroma-affymetrix@googlegroups.com
To unsubscribe and other options, go to http://www.aroma-project.org/forum/

--- 
You received this message because you are subscribed to the Google Groups 
"aroma.affymetrix" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to aroma-affymetrix+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to