-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathREADME.Rmd
76 lines (48 loc) · 1.9 KB
/
README.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
---
title: "LISI"
output: github_document
---
```{r, include = FALSE}
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>"
)
```
[![R-CMD-check](https://github.com/immunogenomics/LISI/workflows/R-CMD-check/badge.svg)](https://github.com/immunogenomics/LISI/actions)
To assess whether clusters of cells in a single-cell RNA-seq dataset are
well-mixed across some categorical variable (e.g. batch, technology, donor), we
provide an algorithm for computing a Local Inverse Simpson's Index (LISI).
## Citation
Learn more about how we use LISI to measure single cell integration methods in
the Harmony paper:
- Korsunsky, I. et al. [Fast, sensitive and accurate integration of single-cell
data with Harmony.][Korsunsky] Nat. Methods (2019)
[Korsunsky]: https://www.nature.com/articles/s41592-019-0619-0
Or see the freely available pre-print at [bioRxiv].
[bioRxiv]: https://www.biorxiv.org/content/early/2018/11/04/461954
## Installation
Install the lisi R package with devtools:
```{r, eval = FALSE}
install.packages("devtools")
devtools::install_github("immunogenomics/lisi")
```
## Example
We can compute the LISI for each cell with these inputs:
- a matrix of cells (rows) and coordinates (PC scores, tSNE or UMAP dimensions, etc.)
- a data frame with categorical variables (one row for each cell)
Here is a small example that uuses the data provided with the lisi R package.
```{r}
library(lisi)
head(X)
head(meta_data)
table(meta_data$label1)
table(meta_data$label2)
res <- compute_lisi(X, meta_data, c('label1', 'label2'))
head(res)
```
Each row in the output data frame corresponds to a cell from `X`. The score
(e.g. 1.92) indicates the effective number of different categories represented
in the local neighborhood of each cell. If the cells are well-mixed, then we
might expect the LISI score to be near 2 for a categorical variable with 2
categories.
Learn more by running `?compute_lisi` in R.