[Mfuzz] Error in cmeans(exprs(eset)
1
0
Entering edit mode
boczniak767 ▴ 720
@maciej-jonczyk-3945
Last seen 3 days ago
Poland
Dear List Members, I use Mfuzz package. I've successfully clustered two data sets. I wanted to cluster third data set (very similar to those two) and I encountered following error in both cselection and partcoef: > roznice=read.table("allstop",header=T,row.names=1,sep="\t") > rozn_set=new("ExpressionSet",exprs=as.matrix(roznice)) > dim(roznSR) Features Samples 902 7 > class(rozn_set) [1] "ExpressionSet" attr(,"package") [1] "Biobase" > roznS=standardise(rozn_set) > roznSR=randomise(roznS) x=cselection(roznSR,m=1.25,crange=seq(4,40,1),repeats=5,visu=T) Error in cmeans(exprs(eset), centers = centers, method = "cmeans", m = m, : NA/NaN/Inf in foreign function call (arg 1) > traceback() 4: .C("cmeans", as.double(x), as.integer(xrows), as.integer(xcols), centers = as.double(centers), as.integer(ncenters), as.double(weights), as.double(m), as.integer(dist - 1), as.integer(iter.max), as.double(reltol), as.integer(verbose), u = double(xrows * ncenters), ermin = double(1), iter = integer(1), PACKAGE = "e1071") 3: cmeans(exprs(eset), centers = centers, method = "cmeans", m = m, ...) 2: mfuzz(eset, centers = c, m = m) 1: cselection(roznSR, m = 1.25, crange = seq(4, 40, 1), repeats = 5, visu = T) > partcoef(roznSR, crange=seq(4,40,1),mrange=seq(1.25,3,0.05)) Error in cmeans(exprs(eset), centers = centers, method = "cmeans", m = m, : NA/NaN/Inf in foreign function call (arg 1) > traceback() 4: .C("cmeans", as.double(x), as.integer(xrows), as.integer(xcols), centers = as.double(centers), as.integer(ncenters), as.double(weights), as.double(m), as.integer(dist - 1), as.integer(iter.max), as.double(reltol), as.integer(verbose), u = double(xrows * ncenters), ermin = double(1), iter = integer(1), PACKAGE = "e1071") 3: cmeans(exprs(eset), centers = centers, method = "cmeans", m = m, ...) 2: mfuzz(eset, centers = c, m = m, ...) 1: partcoef(roznSR, crange = seq(4, 40, 1), mrange = seq(1.25, 3, 0.05)) > sessionInfo() R version 2.11.1 (2010-05-31) i686-pc-linux-gnu locale: [1] LC_CTYPE=pl_PL.UTF-8 LC_NUMERIC=C [3] LC_TIME=pl_PL.UTF-8 LC_COLLATE=pl_PL.UTF-8 [5] LC_MONETARY=C LC_MESSAGES=pl_PL.UTF-8 [7] LC_PAPER=pl_PL.UTF-8 LC_NAME=C [9] LC_ADDRESS=C LC_TELEPHONE=C [11] LC_MEASUREMENT=pl_PL.UTF-8 LC_IDENTIFICATION=C attached base packages: [1] tcltk stats graphics grDevices utils datasets methods [8] base other attached packages: [1] Mfuzz_2.6.0 DynDoc_1.26.0 widgetTools_1.26.0 e1071_1.5-25 [5] class_7.3-2 Biobase_2.8.0 loaded via a namespace (and not attached): [1] tkWidgets_1.26.0 I suppose that it's problem with my imput data, but it's organised in the same manner as other datasets, for which no error occured. I'd checked this data for missing values but there aren't any. It's looks ok. Thanks, Maciej Jo?czyk, MSc Department of Plant Molecular Ecophysiology Institute of Plant Experimental Biology Faculty of Biology, University of Warsaw 02-096 Warszawa, Miecznikowa 1 ___________________________________ NOCC, http://nocc.sourceforge.net -- This email was Anti Virus checked by Astaro Security Gateway. http://www.astaro.com
Mfuzz Mfuzz • 3.7k views
ADD COMMENT
0
Entering edit mode
boczniak767 ▴ 720
@maciej-jonczyk-3945
Last seen 3 days ago
Poland
Dear List Members, I've found response on my question. http://article.gmane.org/gmane.science.biology.informatics.conductor/3 3034/match=na+nan+inf+foreign+function+call It was problem with rows with 0 variance. Best, Maciej Jo?czyk <mjonczyk at="" biol.uw.edu.pl=""> nadawca : > Dear List Members, > > I use Mfuzz package. I've successfully clustered two data sets. > I wanted to cluster third data set (very similar to those two) > and I encountered following error in both cselection and partcoef: > > > > roznice=read.table("allstop",header=T,row.names=1,sep="\t") > > rozn_set=new("ExpressionSet",exprs=as.matrix(roznice)) > > dim(roznSR) > Features Samples > 902 7 > > class(rozn_set) > [1] "ExpressionSet" > attr(,"package") > [1] "Biobase" > > roznS=standardise(rozn_set) > > roznSR=randomise(roznS) > x=cselection(roznSR,m=1.25,crange=seq(4,40,1),repeats=5,visu=T) > Error in cmeans(exprs(eset), centers = centers, method = "cmeans", m = > m, : > NA/NaN/Inf in foreign function call (arg 1) > > traceback() > 4: .C("cmeans", as.double(x), as.integer(xrows), as.integer(xcols), > centers = as.double(centers), as.integer(ncenters), > as.double(weights), > as.double(m), as.integer(dist - 1), as.integer(iter.max), > as.double(reltol), as.integer(verbose), u = double(xrows * > ncenters), ermin = double(1), iter = integer(1), PACKAGE = > "e1071") > 3: cmeans(exprs(eset), centers = centers, method = "cmeans", m = m, > ...) > 2: mfuzz(eset, centers = c, m = m) > 1: cselection(roznSR, m = 1.25, crange = seq(4, 40, 1), repeats = 5, > visu = T) > > partcoef(roznSR, crange=seq(4,40,1),mrange=seq(1.25,3,0.05)) > Error in cmeans(exprs(eset), centers = centers, method = "cmeans", m = > m, : > NA/NaN/Inf in foreign function call (arg 1) > > traceback() > 4: .C("cmeans", as.double(x), as.integer(xrows), as.integer(xcols), > centers = as.double(centers), as.integer(ncenters), > as.double(weights), > as.double(m), as.integer(dist - 1), as.integer(iter.max), > as.double(reltol), as.integer(verbose), u = double(xrows * > ncenters), ermin = double(1), iter = integer(1), PACKAGE = > "e1071") > 3: cmeans(exprs(eset), centers = centers, method = "cmeans", m = m, > ...) > 2: mfuzz(eset, centers = c, m = m, ...) > 1: partcoef(roznSR, crange = seq(4, 40, 1), mrange = seq(1.25, 3, > 0.05)) > > > sessionInfo() > R version 2.11.1 (2010-05-31) > i686-pc-linux-gnu > > locale: > [1] LC_CTYPE=pl_PL.UTF-8 LC_NUMERIC=C > [3] LC_TIME=pl_PL.UTF-8 LC_COLLATE=pl_PL.UTF-8 > [5] LC_MONETARY=C LC_MESSAGES=pl_PL.UTF-8 > [7] LC_PAPER=pl_PL.UTF-8 LC_NAME=C > [9] LC_ADDRESS=C LC_TELEPHONE=C > [11] LC_MEASUREMENT=pl_PL.UTF-8 LC_IDENTIFICATION=C > > attached base packages: > [1] tcltk stats graphics grDevices utils datasets > methods > [8] base > > other attached packages: > [1] Mfuzz_2.6.0 DynDoc_1.26.0 widgetTools_1.26.0 > e1071_1.5-25 > [5] class_7.3-2 Biobase_2.8.0 > > loaded via a namespace (and not attached): > [1] tkWidgets_1.26.0 > > > I suppose that it's problem with my imput data, but it's organised in > the > same manner as other datasets, for which no error occured. > > I'd checked this data for missing values but there aren't any. It's > looks ok. > > > Thanks, > > Maciej Jo?czyk, MSc > Department of Plant Molecular Ecophysiology > Institute of Plant Experimental Biology > Faculty of Biology, University of Warsaw > 02-096 Warszawa, Miecznikowa 1 > > > > ___________________________________ > NOCC, http://nocc.sourceforge.net > > > Maciej Jo?czyk, MSc Department of Plant Molecular Ecophysiology Institute of Plant Experimental Biology Faculty of Biology, University of Warsaw 02-096 Warszawa, Miecznikowa 1 ___________________________________ NOCC, http://nocc.sourceforge.net
ADD COMMENT
0
Entering edit mode

Hi! I've tried but can't do it solve this problem. I have a matrix with genes (col = 1) and expression values (col = 2, 3 and 4). I try to use the soft clustering library Mfuzz, but an error in cmeans don't let me plot the clusters. Anyone to give me a hand, please?

cito <- read.table("CSVFILE.csv", header = TRUE, row.names = 1, sep = ",") cito[cito == 0] <- NA cito1 <- na.omit(cito) cito2 <- log2(cito1) M1 <- normalize.quantiles(as.matrix(cito)) rownames(M1) = rownames(cito) colnames(M1) = colnames(cito) eset1 <- new("ExpressionSet",exprs=M1) eset2 <- standardise(eset1) m2 <- mestimate(eset2) cl1 <- mfuzz(eset2, c = 16, m = 1.25) # citoplasmáticas Error in cmeans(exprs(eset), centers = centers, method = "cmeans", m = m, : NA/NaN/Inf in foreign function call (arg 1)

Thanks!

ADD REPLY
0
Entering edit mode

You can have this problem (lines with variance equal to zero) when you run experiments and obtain the data with more samples and use fewer (for example 3 initial treatments, and use only two in the analysis). When you don't use some samples, you run the risk of some gene/protein only being detected in the samples you didn't use. So, if you replace the NA with the mean, or with an extremely low value (which is what I think is most correct), all the samples in the line for that gene will have the same value as the one that replaced the NA, generating a variance equal to zero. Perhaps filtering the data, looking for equal values in the repetitions, or variance equal to zero will allow you to obtain the analysis/figure. I hope I've helped.

ADD REPLY

Login before adding your answer.

Traffic: 422 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6