<p><div><div><div><div data-show-faces="false" data-height="21" data-width="100" data-layout="button_count" data-send="true" data-href="https://www.r-bloggers.com/biclustgui-1-1-1/"></div></div><div></div></div><div></div></div>
<div>
(This article was first published on <strong><a href="http://ewouddt.github.io/RcmdrPlugin.BiclustGUI/2017/07/04/BiBitWorkflow/"> BiclustGUI - r</a></strong>, and kindly contributed to <a rel="nofollow" href="https://www.r-bloggers.com/">R-bloggers)</a> </div>
<h1>BiclustGUI 1.1.1: BiBit Workflow for Noisy Biclusters</h1>
<p>Ewoud De Troyer, University of Hasselt (CenStat)</p>
<h3>Introduction – 1.1.1 Update</h3>
<p>The 1.1.1 update of the BiclustGUI introduces two 2 new features:</p>
<ul>
<li><strong>The BiBit Workflow Tool for BiBit results:</strong><br>
Discover noisy biclusters from larger column patterns</li>
<li><strong>The Jaccard Index Heatmap tool:</strong><br>
Create a Jaccard Index heatmap of the biclusters of a single result or compare the biclusters of two results.</li>
</ul>
<p><strong>Installation Instructions</strong></p>
<div>
<pre><code><span>setRepositories</span><span>(</span><span>ind</span><span>=</span><span>c</span><span>(</span><span>1</span><span>:</span><span>5</span><span>))</span><span>
</span><span>install.packages</span><span>(</span><span>&quot;RcmdrPlugin.BiclustGUI&quot;</span><span>)</span><span>
</span></code></pre>
</div>
<h3>BiBit Workflow – Overview</h3>
<p>This workflow continues further on an earlier <a rel="nofollow" href="https://ewouddt.github.io/RcmdrPlugin.BiclustGUI/2017/01/27/BiBitR/" target="_blank">blog post</a> on the BiBit algorithm with noise allowance. An accompanying illustration of the algorithm can be found <a rel="nofollow" href="https://github.com/ewouddt/RcmdrPlugin.BiclustGUI/raw/gh-pages/img/http://ewouddt.github.io/RcmdrPlugin.BiclustGUI/img/bibitworkflow_images/bibitexample.pdf" target="_blank">here</a>.</p>
<p>Looking for Noisy Biclusters in large <strong>binary data</strong> using BiBit with noise allowance often results in many (overlapping) biclusters. In order decrease the number of biclusters and find larger meaningful patterns which make up noisy biclusters, the following workflow, namely <strong>BiBit Workflow</strong>, can be applied.<br>
Note that this workflow is primarily used for data where there are many more rows (e.g. patients) than columns (e.g. symptoms). For example the workflow would discover larger meaningful symptom patterns which, conditioned on the allowed noise/zeros, subsets of the patients share.</p>
<p>The workflow follows the following steps:</p>
<ol>
<li>Apply BiBit with <strong>no noise</strong> (preferably with high enough minimum rows and columns)</li>
<li>Compute the Similarity Matrix (Jaccard Index) of all biclusters. It is recommended to base this similarity only on the column dimension. The reason being that in this step we are primarily interested in finding larger column patterns based on local substructures in the data. The matching rows to these patterns are discovered in a later step.</li>
<li>Apply Agglomerative Hierachical Clustering on the Similarity Matrix (average link by default).</li>
<li>Cut the dendrogram of the clustering result and merge the biclusters based on this decision. (e.g. gap statistic, row coverage)</li>
<li>Extract the column memberships of the merged biclusters. These are called the <em>Merged Patterns</em>.</li>
<li>Starting from these new patterns, <strong>noisy rows</strong> are grown to create a final number of biclusters. Finally duplicate and non-maximal biclusters are deleted.</li>
</ol>
<p>A schematic of the workflow steps:</p>
<p><img alt="BiBit Workflow - Schematic (Step 1-4)" src="https://i1.wp.com/ewouddt.github.io/RcmdrPlugin.BiclustGUI/img/bibitworkflow_images/bibitworkflowexample.png?w=450" data-recalc-dims="1"></p>
<p>
BiBit Workflow – Schematic (Step 1-4)
</p>
<p><img alt="BiBit Workflow - Schematic (Step 5-6)" src="https://i1.wp.com/ewouddt.github.io/RcmdrPlugin.BiclustGUI/img/bibitworkflow_images/bibitworkflowexample2.png?w=450" data-recalc-dims="1"></p>
<p>
BiBit Workflow – Schematic (Step 5-6)
</p>
<p>An informative plot that can aid in the choice of number of clusters in <strong>Step 4</strong> is the Row Coverage plot. It plots the number of clusters versus the total number of unique rows (after merging the column patterns and growing rows to create biclusters). The more clusters you choose, the smaller (albeit more similar) the patterns are and the more rows will fit your patterns (i.e. more row coverage).</p>
<p><img alt="Row Coverage Example" src="https://i1.wp.com/ewouddt.github.io/RcmdrPlugin.BiclustGUI/img/bibitworkflow_images/minr100_rowcov-2.png?w=400" data-recalc-dims="1"></p>
<p>
Row Coverage Example
</p>
<p>The default version of the workflow has been included in the BiclustGUI. It can be accessed through the <em>BiBitWorkflow</em> button the <em>Plots &amp; Diagnostics</em> tab of the BiBit window. The earlier obtained BiBit result (from the <em>Clustering Tab</em>) will be used in the BiBit Workflow.</p>
<p><img alt="BiBit Workflow Window" src="https://i0.wp.com/ewouddt.github.io/RcmdrPlugin.BiclustGUI/img/bibitworkflow_images/bibitworkflow.png?w=400" data-recalc-dims="1"></p>
<p>
BiBit Workflow Window
</p>
<p>The main steps in this window are:</p>
<ol>
<li>Apply the <em>default BiBit Workflow</em> (using average link) with choice of similarity, cutting parameter and noise level.</li>
<li>Visualise the <em>Dendrogram</em> and <em>Cluster Row Coverage</em> graphs.</li>
<li><em>Update</em> the BiBit Workflow result with new cutting and noise parameters.</li>
<li><em>Save</em> the BiBit Workflow result to a BiBit result in order to use all available <em>visual and diagnostic tools</em> in the BiclustGUI.<br>
(e.g. The noise column graph for a BC which tells you which column/condition in the pattern most often absent (i.e. noisy))</li>
</ol>
<p><img alt="Column Noise Example" src="https://i0.wp.com/ewouddt.github.io/RcmdrPlugin.BiclustGUI/img/bibitworkflow_images/minr250_minc4_C9-1.png?w=300" data-recalc-dims="1"></p>
<p>
Column Noise Example
</p>
<p>A more detailed description can be found in the <a rel="nofollow" href="https://github.com/ewouddt/RcmdrPlugin.BiclustGUI/raw/master/vignettes/GuideBiclustGUI.pdf" target="_blank">vignette</a>. Note that a more exhaustive analysis (including the use of the Gap Statistic) can be applied by using the functions of the <code>BiBitR</code> (<a rel="nofollow" href="https://cran.r-project.org/package=BiBitR" target="_blank">CRAN</a>, <a rel="nofollow" href="https://github.com/ewouddt/BiBitR" target="_blank">GitHub</a>) package directly.</p>
<h3>Additional New Feature: Jaccard Index Heatmaps</h3>
<p>An extra utility tool has been added to the BiclustGUI. With it you can either plot a heatmap of the Jaccard Index between the biclusters of a single result or plot a heatmap between the biclusters of two different results.</p>
<p><img alt="Jaccard Index Heatmap Window" src="https://i0.wp.com/ewouddt.github.io/RcmdrPlugin.BiclustGUI/img/bibitworkflow_images/jaccardheatmap.png?w=250" data-recalc-dims="1"></p>
<p>
Jaccard Index Heatmap Window
</p>
<p><img alt="Jaccard Index Heatmap Example" src="https://i2.wp.com/ewouddt.github.io/RcmdrPlugin.BiclustGUI/img/bibitworkflow_images/HeatmapJI_example.png?w=450" data-recalc-dims="1"></p>
<p>
Jaccard Index Heatmap Example
</p>
<h3>Contact</h3>
<p>Please direct any <strong>questions/suggestions/bugs</strong> to <code>ewoud.detroyer[at]uhasselt.be</code>.</p>
<p>We are happy to take any feedback!</p>
	<p>
<div>
<div>To <strong>leave a comment</strong> for the author, please follow the link and comment on their blog: <strong><a href="http://ewouddt.github.io/RcmdrPlugin.BiclustGUI/2017/07/04/BiBitWorkflow/"> BiclustGUI - r</a></strong>.</div>
<hr>
<a rel="nofollow" href="https://www.r-bloggers.com/">R-bloggers.com</a> offers <strong><a rel="nofollow" href="https://feedburner.google.com/fb/a/mailverify?uri=RBloggers">daily e-mail updates</a></strong> about <a rel="nofollow" href="https://www.r-project.org/" title="The R Project for Statistical Computing">R</a> news and <a rel="nofollow" href="https://www.r-bloggers.com/search/tutorial" title="R tutorials">tutorials</a> on topics such as: <a rel="nofollow" href="https://www.r-bloggers.com/search/data%20science" title="Data science">Data science</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/Big%20Data" title="Big Data">Big Data, <a rel="nofollow" href="https://www.r-users.com/" title="R jobs">R jobs</a>, visualization (<a rel="nofollow" href="https://www.r-bloggers.com/search/ggplot2" title="ggplot and ggplot2 tutorials">ggplot2</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/boxplot" title="Boxplots using lattice and ggplot2 tutorials">Boxplots</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/map" title="Maps and gis">maps</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/animation" title="Animation in R">animation</a>), programming (<a rel="nofollow" href="https://www.r-bloggers.com/search/RStudio" title="RStudio IDE for R">RStudio</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/sweave" title="Sweave and literate programming">Sweave</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/LaTeX" title="LaTeX in R">LaTeX</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/SQL" title="SQL and databases">SQL</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/eclipse" title="Eclipse IDE for R">Eclipse</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/git" title="git and github, Version Control System">git</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/hadoop" title="Large data in R using Hadoop">hadoop</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/Web+Scraping" title="Web Scraping of google, facebook, yahoo, twitter and more using R">Web Scraping</a>) statistics (<a rel="nofollow" href="https://www.r-bloggers.com/search/regression" title="Regressions and ANOVA analysis tutorials">regression</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/PCA" title="principal component analysis tutorial">PCA</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/time+series" title="Time series">time series</a>, <a rel="nofollow" href="https://www.r-bloggers.com/search/trading" title="finance trading">trading</a>) and more...
<img width="1" alt="" src="http://feeds.feedburner.com/~r/RBloggers/~4/VdhhCXLa4Bs" height="1"></a></div>