<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>Thank you. traceback() pointed to the problem: </div><div>...</div><div><div> }("[r=2] -> NMF::nmf - 30/30 fit(s) threw an error.\n# Error(s) thrown:\n - run #1: NMF::nmf -<font class="Apple-style-span" color="#e32400"> Input matrix x contains at least one null row</font>.", </div><div> "[r=3] -> NMF::nmf - 30/30 fit(s) threw an error.\n# Error(s) thrown:\n - run #1: NMF::nmf - Input matrix x contains at least one null row.", </div><div> "[r=4] -> NMF::nmf - 30/30 fit(s) threw an error.\n# Error(s) thrown:\n - run #1: NMF::nmf - Input matrix x contains at least one null row.", </div><div> "[r=5] -> NMF::nmf - 30/30 fit(s) threw an error.\n# Error(s) thrown:\n - run #1: NMF::nmf - Input matrix x contains at least one null row.", </div><div> "[r=6] -> NMF::nmf - 30/30 fit(s) threw an error.\n# Error(s) thrown:\n - run #1: NMF::nmf - Input matrix x contains at least one null row.")</div><div><br></div><div>Sure enough, there were two miRs (rows) with zero values in all samples. I'd probably seen them in setting up the original run, but was going quickly… </div><div><br></div><div>When I deleted the rows, I was able to run the nmf command on the matrix (35 data rows, 66 samples):</div><div>>res <- nmf(x, 2:6, .opt='v9')</div><div>...</div><div>…</div><div><div># libPaths:</div><div> /Library/Frameworks/R.framework/Versions/2.15/Resources/library</div><div>Runs: 1 32 4 5 6 7 8* 11* 13* 10* 16* 12* 14* 15 9* 19 18 21* 24* 20 27 22** 17* 23 26 30 29 28 25* ... DONE</div><div># Processing partial results ... OK</div><div>System time:</div><div> user system elapsed </div><div> 46.820 1.128 8.759 </div><div>## Cleaning up ... </div><div># Restoring NMF options ... OK</div><div># Restoring foreach backend ... OK</div><div># Updating RNG settings ... OK</div><div># RNG kind: Mersenne-Twister / Inversion </div><div># RNG state: 403L, 2L, ..., 270725601L [84247f48b334857a5b8c4b029d25909b] </div><div># Deleting directory './NMF_20f56511e3f' ... OK</div><div>+ measures ... OK</div></div><div>>plot(res)</div><div><br></div><div>How should NMF handle such cases? The docs likely warn against submitting zero-valued rows, and I typically never do, but this was a test case in which I was running with a selected subset of miRs. </div><div><br></div><div>Thanks again!</div><div><br></div><div>Gordon</div><div apple-content-edited="true">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br></div></div>
</div>
<br><div><div>On 2013-03-18, at 4:05 AM, Renaud Gaujoux wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div dir="ltr"><div><div><div><div><div>Could you please post some reproducible example (commands, output of errors, traceback and sessionInfo)?<br></div>This will simplify tracing the issue.<br></div><div>If confidentiality is an issue, email only to me.<br>
<br></div>e.g.:<br><br></div># run NMF<br></div>res <- nmf(x, 2:6, .opt='v9')<br></div>traceback()<br>sessionInfo()<br><div><br></div><div>Thank you.<br></div><div>Renaud<br></div></div><div class="gmail_extra">
<br><br><div class="gmail_quote">2013/3/18 Gordon Robertson <span dir="ltr"><<a href="mailto:grobertson@bcgsc.ca" target="_blank">grobertson@bcgsc.ca</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div style="word-wrap:break-word">Renaud,<div><br></div><div>Thanks for clarifying this.</div><div><br></div><div>I asked because I tried to run NMF on a miRNA-seq abundance matrix that had 66 samples (columns) and only a small set of miRs (rows), say 20 miRs. I've used NMF routinely for larger miRNA-seq data matrices for some time (using 200-300 miRs), including on a 300-miR matrix for the same samples, but this time the survey returned only errors. I was able to get results from Matt Wilkerson's Consensus Cluster Plus package. I'll look more carefully at what happens to the NMF runs as I progressively remove miRs. </div>
<div><span class="HOEnZb"><font color="#888888"><br></font></span><div><span class="HOEnZb"><font color="#888888">G</font></span><div><div class="h5"><br><div>
<span style="text-indent:0px;letter-spacing:normal;font-variant:normal;text-align:-webkit-auto;font-style:normal;font-weight:normal;line-height:normal;border-collapse:separate;text-transform:none;font-size:medium;white-space:normal;font-family:Helvetica;word-spacing:0px"><span style="text-indent:0px;letter-spacing:normal;font-variant:normal;text-align:-webkit-auto;font-style:normal;font-weight:normal;line-height:normal;border-collapse:separate;text-transform:none;font-size:medium;white-space:normal;font-family:Helvetica;word-spacing:0px"><div style="word-wrap:break-word">
<span style="text-indent:0px;letter-spacing:normal;font-variant:normal;text-align:-webkit-auto;font-style:normal;font-weight:normal;line-height:normal;border-collapse:separate;text-transform:none;font-size:medium;white-space:normal;font-family:Helvetica;word-spacing:0px"><div style="word-wrap:break-word">
<br></div></span></div></span></span>
</div>
<br><div><div>On 2013-03-18, at 12:55 AM, Renaud Gaujoux wrote:</div><br><blockquote type="cite"><div dir="ltr"><div><div><div>Hi,<br><br></div>no, all genes/features are included in each run. What changes is the seed, i.e. starting point, which is different and randomly generated at each run.<br>
<br></div>Standard consensus clustering analysis would use a different set of _samples_ for each run. This is fine for evaluating the accuracy/stability of classification, but makes it difficult to link features to sample groups, since each run (vote) returns a somehow different set of component-specific feature: what set of features or basis components should be used? average? consensus?<br>
</div><div>Would be nice to incorporate a function/option to easily perform such analysis though.<br></div><div><br></div>There is still some methodology to be developed around this point. A technical issue also arise in term of memory/speed, if one wants to compute complete feature consensus matrices.<br>
<div>I am happy to hear/discuss on this.<br></div><div>My time is currently very limited, although bringing the package back to CRAN is quite high on my todo list.<br><br></div><div>Renaud<br></div><div><br></div></div><div class="gmail_extra">
<br><br><div class="gmail_quote">2013/3/14 Gordon Robertson <span dir="ltr"><<a href="mailto:grobertson@bcgsc.ca" target="_blank">grobertson@bcgsc.ca</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div style="word-wrap:break-word"><div>From what I understand, in each iteration (of, say, 200) in a run, a random subset of genes is used. Is it possible to set the fractional value retained, e.g. 0.90, 0.95? </div><div>
Thanks,</div><div>G</div><div>
<span style="text-indent:0px;letter-spacing:normal;font-variant:normal;text-align:-webkit-auto;font-style:normal;font-weight:normal;line-height:normal;border-collapse:separate;text-transform:none;font-size:medium;white-space:normal;font-family:Helvetica;word-spacing:0px"><span style="text-indent:0px;letter-spacing:normal;font-variant:normal;text-align:-webkit-auto;font-style:normal;font-weight:normal;line-height:normal;border-collapse:separate;text-transform:none;font-size:medium;white-space:normal;font-family:Helvetica;word-spacing:0px"><div style="word-wrap:break-word">
<span style="text-indent:0px;letter-spacing:normal;font-variant:normal;text-align:-webkit-auto;font-style:normal;font-weight:normal;line-height:normal;border-collapse:separate;text-transform:none;font-size:medium;white-space:normal;font-family:Helvetica;word-spacing:0px"><div style="word-wrap:break-word">
--</div><div style="word-wrap:break-word">Gordon Robertson<br>Michael Smith Genome Sciences Centre</div><div style="word-wrap:break-word">BC Cancer Agency<br>Vancouver BC Canada<br><a href="http://www.bcgsc.ca/" target="_blank">www.bcgsc.ca</a><br>
<br></div></span></div></span></span>
</div>
<br></div><br>_______________________________________________<br>
nmf-user mailing list<br>
<a href="mailto:nmf-user@lists.r-forge.r-project.org" target="_blank">nmf-user@lists.r-forge.r-project.org</a><br>
<a href="https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/nmf-user" target="_blank">https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/nmf-user</a><br></blockquote></div><br><br clear="all"><br>-- <br>
<pre cols="72">Renaud Gaujoux
Computational Biology - University of Cape Town
South Africa</pre>
</div>
</blockquote></div><br></div></div></div></div></div></blockquote></div><br><br clear="all"><br>-- <br><pre cols="72">Renaud Gaujoux
Computational Biology - University of Cape Town
South Africa</pre>
</div>
</blockquote></div><br></div></body></html>