Commit 0fd18180 authored by AustinHartman's avatar AustinHartman
Browse files

fix collapse counts example; update docs/

parent 5e66915e
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -46,7 +46,7 @@ compute_hash <- function(data_df, vars_use) {
#' md2 <- sample(c("c", "d"), 500, replace=TRUE)
#' df <- data.frame(md1, md2)
#' data_collapsed <- collapse_counts(m, df, c("md1", "md2"))
#' head(data_collapsed$$counts_mat)
#' head(data_collapsed$counts_mat)
#'
#' @export
#'
+30 −16
Original line number Diff line number Diff line
@@ -137,7 +137,21 @@
<p>We support interfacing with Seurat Version 3 objects. In the most basic use case, specify the Seurat object and the meta data variable that defines the group labels.</p>
<div class="sourceCode" id="cb9"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="https://rdrr.io/r/utils/data.html" class="external-link">data</a></span><span class="op">(</span><span class="va">object_seurat</span><span class="op">)</span></span>
<span><span class="fu"><a href="https://rdrr.io/r/utils/head.html" class="external-link">head</a></span><span class="op">(</span><span class="fu"><a href="../reference/wilcoxauc.html">wilcoxauc</a></span><span class="op">(</span><span class="va">object_seurat</span>, <span class="st">'cell_type'</span><span class="op">)</span><span class="op">)</span></span></code></pre></div>
<span><span class="co"># ensure object structure matches with the installed Seurat version</span></span>
<span><span class="va">object_seurat</span> <span class="op">&lt;-</span> <span class="fu">Seurat</span><span class="fu">::</span><span class="fu"><a href="https://mojaveazure.github.io/seurat-object/reference/UpdateSeuratObject.html" class="external-link">UpdateSeuratObject</a></span><span class="op">(</span><span class="va">object_seurat</span><span class="op">)</span></span></code></pre></div>
<pre><code><span><span class="co">## Validating object structure</span></span></code></pre>
<pre><code><span><span class="co">## Updating object slots</span></span></code></pre>
<pre><code><span><span class="co">## Ensuring keys are in the proper structure</span></span></code></pre>
<pre><code><span><span class="co">## Ensuring feature names don't have underscores or pipes</span></span></code></pre>
<pre><code><span><span class="co">## Updating slots in RNA</span></span></code></pre>
<pre><code><span><span class="co">## Updating slots in pca</span></span></code></pre>
<pre><code><span><span class="co">## Setting assay used for NormalizeData.RNA to RNA</span></span></code></pre>
<pre><code><span><span class="co">## Setting assay used for FindVariableFeatures.RNA to RNA</span></span></code></pre>
<pre><code><span><span class="co">## Setting assay used for ScaleData.RNA to RNA</span></span></code></pre>
<pre><code><span><span class="co">## Setting assay used for RunPCA.RNA to RNA</span></span></code></pre>
<pre><code><span><span class="co">## Object representation is consistent with the most current Seurat version</span></span></code></pre>
<div class="sourceCode" id="cb21"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="https://rdrr.io/r/utils/head.html" class="external-link">head</a></span><span class="op">(</span><span class="fu"><a href="../reference/wilcoxauc.html">wilcoxauc</a></span><span class="op">(</span><span class="va">object_seurat</span>, <span class="st">'cell_type'</span><span class="op">)</span><span class="op">)</span></span></code></pre></div>
<pre><code><span><span class="co">##   feature  group avgExpr   logFC statistic  auc pval padj pct_in pct_out</span></span>
<span><span class="co">## 1      G1 jurkat     6.0  0.0406     11343 0.50 0.90 1.00    100     100</span></span>
<span><span class="co">## 2      G2 jurkat     5.9 -0.0278     11209 0.50 0.96 1.00    100     100</span></span>
@@ -146,7 +160,7 @@
<span><span class="co">## 5      G5 jurkat     6.0 -0.0202     11244 0.50 1.00 1.00    100     100</span></span>
<span><span class="co">## 6      G6 jurkat     5.9 -0.0075     11038 0.49 0.78 1.00    100     100</span></span></code></pre>
<p>Seurat objects can store multiple assays. The assay used by <code>wilcoxauc</code> can be specified with the <code>seurat_assay</code> argument.</p>
<div class="sourceCode" id="cb11"><pre class="downlit sourceCode r">
<div class="sourceCode" id="cb23"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="https://rdrr.io/r/utils/head.html" class="external-link">head</a></span><span class="op">(</span><span class="fu"><a href="../reference/wilcoxauc.html">wilcoxauc</a></span><span class="op">(</span><span class="va">object_seurat</span>, <span class="st">'cell_type'</span>, seurat_assay <span class="op">=</span> <span class="st">'RNA'</span><span class="op">)</span><span class="op">)</span></span></code></pre></div>
<pre><code><span><span class="co">##   feature  group avgExpr   logFC statistic  auc pval padj pct_in pct_out</span></span>
<span><span class="co">## 1      G1 jurkat     6.0  0.0406     11343 0.50 0.90 1.00    100     100</span></span>
@@ -156,7 +170,7 @@
<span><span class="co">## 5      G5 jurkat     6.0 -0.0202     11244 0.50 1.00 1.00    100     100</span></span>
<span><span class="co">## 6      G6 jurkat     5.9 -0.0075     11038 0.49 0.78 1.00    100     100</span></span></code></pre>
<p>Seurat supports multiple feature expression matrices, such as raw counts, library normalized data, and scaled data. These can be accessed with <code>assay</code>.</p>
<div class="sourceCode" id="cb13"><pre class="downlit sourceCode r">
<div class="sourceCode" id="cb25"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="https://rdrr.io/r/utils/head.html" class="external-link">head</a></span><span class="op">(</span><span class="fu"><a href="../reference/wilcoxauc.html">wilcoxauc</a></span><span class="op">(</span><span class="va">object_seurat</span>, <span class="st">'cell_type'</span>, assay <span class="op">=</span> <span class="st">'counts'</span><span class="op">)</span><span class="op">)</span></span></code></pre></div>
<pre><code><span><span class="co">##   feature  group avgExpr   logFC statistic  auc pval padj pct_in pct_out</span></span>
<span><span class="co">## 1      G1 jurkat    0.51  0.0046     11385 0.51 0.85 0.97    100     100</span></span>
@@ -165,7 +179,7 @@
<span><span class="co">## 4      G4 jurkat    0.51 -0.0172     10865 0.48 0.61 0.97    100     100</span></span>
<span><span class="co">## 5      G5 jurkat    0.51  0.0015     11301 0.50 0.94 0.97    100     100</span></span>
<span><span class="co">## 6      G6 jurkat    0.50 -0.0065     11137 0.50 0.89 0.97    100     100</span></span></code></pre>
<div class="sourceCode" id="cb15"><pre class="downlit sourceCode r">
<div class="sourceCode" id="cb27"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="https://rdrr.io/r/utils/head.html" class="external-link">head</a></span><span class="op">(</span><span class="fu"><a href="../reference/wilcoxauc.html">wilcoxauc</a></span><span class="op">(</span><span class="va">object_seurat</span>, <span class="st">'cell_type'</span>, assay <span class="op">=</span> <span class="st">'data'</span><span class="op">)</span><span class="op">)</span></span></code></pre></div>
<pre><code><span><span class="co">##   feature  group avgExpr   logFC statistic  auc pval padj pct_in pct_out</span></span>
<span><span class="co">## 1      G1 jurkat     6.0  0.0406     11343 0.50 0.90 1.00    100     100</span></span>
@@ -174,7 +188,7 @@
<span><span class="co">## 4      G4 jurkat     5.9 -0.0597     10859 0.48 0.61 1.00    100     100</span></span>
<span><span class="co">## 5      G5 jurkat     6.0 -0.0202     11244 0.50 1.00 1.00    100     100</span></span>
<span><span class="co">## 6      G6 jurkat     5.9 -0.0075     11038 0.49 0.78 1.00    100     100</span></span></code></pre>
<div class="sourceCode" id="cb17"><pre class="downlit sourceCode r">
<div class="sourceCode" id="cb29"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="https://rdrr.io/r/utils/head.html" class="external-link">head</a></span><span class="op">(</span><span class="fu"><a href="../reference/wilcoxauc.html">wilcoxauc</a></span><span class="op">(</span><span class="va">object_seurat</span>, <span class="st">'cell_type'</span>, assay <span class="op">=</span> <span class="st">'scale.data'</span><span class="op">)</span><span class="op">)</span></span></code></pre></div>
<pre><code><span><span class="co">##   feature  group avgExpr   logFC statistic  auc pval padj pct_in pct_out</span></span>
<span><span class="co">## 1      G1 jurkat  0.0206  0.0420     11343 0.50 0.90 1.00    100     100</span></span>
@@ -188,7 +202,7 @@
<h3 id="singlecellexperiment">SingleCellExperiment<a class="anchor" aria-label="anchor" href="#singlecellexperiment"></a>
</h3>
<p>presto supports the Bioconductor data structure SingleCellExperiment. Again, the most simple use case takes a SingleCellExperiment object and the metadata field with group labels.</p>
<div class="sourceCode" id="cb19"><pre class="downlit sourceCode r">
<div class="sourceCode" id="cb31"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="https://rdrr.io/r/utils/data.html" class="external-link">data</a></span><span class="op">(</span><span class="va">object_sce</span><span class="op">)</span></span>
<span><span class="fu"><a href="https://rdrr.io/r/utils/head.html" class="external-link">head</a></span><span class="op">(</span><span class="fu"><a href="../reference/wilcoxauc.html">wilcoxauc</a></span><span class="op">(</span><span class="va">object_sce</span>, <span class="st">'cell_type'</span><span class="op">)</span><span class="op">)</span></span></code></pre></div>
<pre><code><span><span class="co">## Loading required package: SingleCellExperiment</span></span></code></pre>
@@ -268,7 +282,7 @@
<span><span class="co">## 5      G5 jurkat     6.0 -0.0202     11244 0.50 1.00 1.00    100     100</span></span>
<span><span class="co">## 6      G6 jurkat     5.9 -0.0075     11038 0.49 0.78 1.00    100     100</span></span></code></pre>
<p>SingleCellExperiment can have several data slots, such as counts and logcounts. These can be accessed with <code>assay</code>.</p>
<div class="sourceCode" id="cb46"><pre class="downlit sourceCode r">
<div class="sourceCode" id="cb58"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="https://rdrr.io/r/utils/head.html" class="external-link">head</a></span><span class="op">(</span><span class="fu"><a href="../reference/wilcoxauc.html">wilcoxauc</a></span><span class="op">(</span><span class="va">object_sce</span>, <span class="st">'cell_type'</span>, assay <span class="op">=</span> <span class="st">'counts'</span><span class="op">)</span><span class="op">)</span></span></code></pre></div>
<pre><code><span><span class="co">##   feature  group avgExpr   logFC statistic  auc pval padj pct_in pct_out</span></span>
<span><span class="co">## 1      G1 jurkat    0.51  0.0046     11385 0.51 0.85 0.97    100     100</span></span>
@@ -277,7 +291,7 @@
<span><span class="co">## 4      G4 jurkat    0.51 -0.0172     10865 0.48 0.61 0.97    100     100</span></span>
<span><span class="co">## 5      G5 jurkat    0.51  0.0015     11301 0.50 0.94 0.97    100     100</span></span>
<span><span class="co">## 6      G6 jurkat    0.50 -0.0065     11137 0.50 0.89 0.97    100     100</span></span></code></pre>
<div class="sourceCode" id="cb48"><pre class="downlit sourceCode r">
<div class="sourceCode" id="cb60"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="https://rdrr.io/r/utils/head.html" class="external-link">head</a></span><span class="op">(</span><span class="fu"><a href="../reference/wilcoxauc.html">wilcoxauc</a></span><span class="op">(</span><span class="va">object_sce</span>, <span class="st">'cell_type'</span>, assay <span class="op">=</span> <span class="st">'logcounts'</span><span class="op">)</span><span class="op">)</span></span></code></pre></div>
<pre><code><span><span class="co">##   feature  group avgExpr   logFC statistic  auc pval padj pct_in pct_out</span></span>
<span><span class="co">## 1      G1 jurkat     6.0  0.0406     11343 0.50 0.90 1.00    100     100</span></span>
@@ -347,7 +361,7 @@
</tr>
</tbody>
</table>
<div class="sourceCode" id="cb50"><pre class="downlit sourceCode r">
<div class="sourceCode" id="cb62"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="https://rdrr.io/r/utils/head.html" class="external-link">head</a></span><span class="op">(</span><span class="fu"><a href="../reference/wilcoxauc.html">wilcoxauc</a></span><span class="op">(</span><span class="va">exprs</span>, <span class="va">y</span><span class="op">)</span><span class="op">)</span></span></code></pre></div>
<pre><code><span><span class="co">##   feature group avgExpr  logFC statistic  auc  pval padj pct_in pct_out</span></span>
<span><span class="co">## 1      G1     A    1.15  0.082      2890 0.55 0.257 0.64     75      59</span></span>
@@ -361,7 +375,7 @@
<h3 id="top-markers">Top markers<a class="anchor" aria-label="anchor" href="#top-markers"></a>
</h3>
<p>We often find it helpful to summarize what the most distinguishing features are in each group.</p>
<div class="sourceCode" id="cb52"><pre class="downlit sourceCode r">
<div class="sourceCode" id="cb64"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="va">res</span> <span class="op">&lt;-</span> <span class="fu"><a href="../reference/wilcoxauc.html">wilcoxauc</a></span><span class="op">(</span><span class="va">exprs</span>, <span class="va">y</span><span class="op">)</span></span>
<span><span class="fu"><a href="../reference/top_markers.html">top_markers</a></span><span class="op">(</span><span class="va">res</span>, n <span class="op">=</span> <span class="fl">10</span><span class="op">)</span></span></code></pre></div>
<pre><code><span><span class="co">## <span style="color: #949494;"># A tibble: 10 × 4</span></span></span>
@@ -378,7 +392,7 @@
<span><span class="co">## <span style="color: #BCBCBC;"> 9</span>     9 G8    G24   G12  </span></span>
<span><span class="co">## <span style="color: #BCBCBC;">10</span>    10 G24   G23   G3</span></span></code></pre>
<p>We can also filter for some criteria. For instance, the top features must be in at least 70% of all observations within the group. Note that not all groups have 10 markers that meet these criteria.</p>
<div class="sourceCode" id="cb54"><pre class="downlit sourceCode r">
<div class="sourceCode" id="cb66"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="va">res</span> <span class="op">&lt;-</span> <span class="fu"><a href="../reference/wilcoxauc.html">wilcoxauc</a></span><span class="op">(</span><span class="va">exprs</span>, <span class="va">y</span><span class="op">)</span></span>
<span><span class="fu"><a href="../reference/top_markers.html">top_markers</a></span><span class="op">(</span><span class="va">res</span>, n <span class="op">=</span> <span class="fl">10</span>, auc_min <span class="op">=</span> <span class="fl">.5</span>, pct_in_min <span class="op">=</span> <span class="fl">70</span><span class="op">)</span></span></code></pre></div>
<pre><code><span><span class="co">## <span style="color: #949494;"># A tibble: 9 × 4</span></span></span>
@@ -402,11 +416,11 @@
<h3 id="dense-vs-sparse">Dense vs sparse<a class="anchor" aria-label="anchor" href="#dense-vs-sparse"></a>
</h3>
<p>presto is optimized for dense and sparse matrix inputs. When possible, use sparse inputs. In our toy dataset, almost 39% of elements are zeros. Thus, it makes sense to cast it as a sparse dgCMatrix and run wilcoxauc on that.</p>
<div class="sourceCode" id="cb56"><pre class="downlit sourceCode r">
<div class="sourceCode" id="cb68"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="https://rdrr.io/r/base/sum.html" class="external-link">sum</a></span><span class="op">(</span><span class="va">exprs</span> <span class="op">==</span> <span class="fl">0</span><span class="op">)</span> <span class="op">/</span> <span class="fu"><a href="https://rdrr.io/r/base/prod.html" class="external-link">prod</a></span><span class="op">(</span><span class="fu"><a href="https://rdrr.io/r/base/dim.html" class="external-link">dim</a></span><span class="op">(</span><span class="va">exprs</span><span class="op">)</span><span class="op">)</span></span></code></pre></div>
<pre><code><span><span class="co">## [1] 0.39</span></span></code></pre>
<div class="sourceCode" id="cb58"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="va">exprs_sparse</span> <span class="op">&lt;-</span> <span class="fu"><a href="https://rdrr.io/r/methods/as.html" class="external-link">as</a></span><span class="op">(</span><span class="va">exprs</span>, <span class="st">'dgCMatrix'</span><span class="op">)</span></span>
<div class="sourceCode" id="cb70"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="va">exprs_sparse</span> <span class="op">&lt;-</span> <span class="fu">as</span><span class="op">(</span><span class="va">exprs</span>, <span class="st">'dgCMatrix'</span><span class="op">)</span></span>
<span><span class="fu"><a href="https://rdrr.io/r/utils/head.html" class="external-link">head</a></span><span class="op">(</span><span class="fu"><a href="../reference/wilcoxauc.html">wilcoxauc</a></span><span class="op">(</span><span class="va">exprs_sparse</span>, <span class="va">y</span><span class="op">)</span><span class="op">)</span></span></code></pre></div>
<pre><code><span><span class="co">##   feature group avgExpr  logFC statistic  auc  pval padj pct_in pct_out</span></span>
<span><span class="co">## 1      G1     A    1.15  0.082      2890 0.55 0.257 0.64     75      59</span></span>
@@ -420,7 +434,7 @@
<h3 id="groups_use">groups_use<a class="anchor" aria-label="anchor" href="#groups_use"></a>
</h3>
<p>Sometimes, you don’t want to test all groups in the dataset against all other groups. For instance, I want to compare only observations in group ‘A’ to those in group ‘B’. This is achieved with the groups_use argument.</p>
<div class="sourceCode" id="cb60"><pre class="downlit sourceCode r">
<div class="sourceCode" id="cb72"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="va">res_AB</span> <span class="op">&lt;-</span> <span class="fu"><a href="../reference/wilcoxauc.html">wilcoxauc</a></span><span class="op">(</span><span class="va">exprs</span>, <span class="va">y</span>, groups_use <span class="op">=</span> <span class="fu"><a href="https://rdrr.io/r/base/c.html" class="external-link">c</a></span><span class="op">(</span><span class="st">'A'</span>, <span class="st">'B'</span><span class="op">)</span><span class="op">)</span></span>
<span><span class="fu"><a href="https://rdrr.io/r/utils/head.html" class="external-link">head</a></span><span class="op">(</span><span class="va">res_AB</span><span class="op">)</span></span></code></pre></div>
<pre><code><span><span class="co">##   feature group avgExpr  logFC statistic  auc    pval    padj pct_in pct_out</span></span>
@@ -430,7 +444,7 @@
<span><span class="co">## 4      G4     A    1.22  0.240      1413 0.57 2.0e-01 0.44123     71      60</span></span>
<span><span class="co">## 5      G5     A    1.42 -0.248      1054 0.43 1.9e-01 0.44123     73      78</span></span>
<span><span class="co">## 6      G6     A    0.93  0.438      1521 0.61 3.1e-02 0.14516     56      36</span></span></code></pre>
<div class="sourceCode" id="cb62"><pre class="downlit sourceCode r">
<div class="sourceCode" id="cb74"><pre class="downlit sourceCode r">
<code class="sourceCode R"><span><span class="fu"><a href="../reference/top_markers.html">top_markers</a></span><span class="op">(</span><span class="va">res_AB</span><span class="op">)</span></span></code></pre></div>
<pre><code><span><span class="co">## <span style="color: #949494;"># A tibble: 10 × 3</span></span></span>
<span><span class="co">##     rank A     B    </span></span>
+1 −1
Original line number Diff line number Diff line
@@ -3,5 +3,5 @@ pkgdown: 2.0.6
pkgdown_sha: ~
articles:
  getting-started: getting-started.html
last_built: 2022-11-09T20:51Z
last_built: 2022-11-09T21:50Z
+17 −19

File changed.

Preview size limit exceeded, changes collapsed.

+1 −1
Original line number Diff line number Diff line
@@ -57,7 +57,7 @@
      </tr></tbody><tbody><tr><td>
          <p><code><a href="collapse_counts.html">collapse_counts()</a></code> </p>
        </td>
        <td><p>Collapse counts</p></td>
        <td><p>Collapse counts based on multiple categorical metadata columns</p></td>
      </tr><tr><td>
          <p><code><a href="compute_hash.html">compute_hash()</a></code> </p>
        </td>
Loading