Comments (5)
Hi,
Currently, LIGER only provides calcARI()
and calcPurity()
for quantitatively evaluating clustering similarity. However, they might not be directly what you expect but I'd still explain a bit, in case. So subjectively looking at the Sankey plot allows using the joint-clustering result as a reference and see how the (preferably existing) cell types from two species map to it. The two metrics, ARI and Purity, simply compares two sets of annotation applied on the same set of cells. So if you want to compare the known annotation of cells from species A against the annotation of cells from species B, these metrics won't work. But after running integration and getting joint clustering, you can compare the joint clustering subset to species A with the known annotation of species A, and then do the same with species B. If metric values for both comparisons turn out to be high, that can imply that the integrated joint clustering well captures the original cell type population from each species.
Best,
Yichen
from liger.
@mvfki
Thank you for your prompt reply. Is it possible for me to add the annotations for Species A and Species B in the lig's metadata, and then calculate the distance between the UMAP coordinates of each cell subset from the two species to quantify the similarity between the two species?
from liger.
You definitely can! For operation on metadata, you can do cellMeta(lig, "ann", useDataset = "A") <- annotation_A
and then for B, or combine them first and then insert:
ann_comb <- c(annotation_A, annotation_B)
lig$ann <- ann_comb
Note that, the expected order of cells can be checked with colnames(lig)
. And there are more details in our documentation.
Beyond that, if you would like to use the subset distance approach, I don't think it's very necessary to insert metadata because the insertion is only required for a rliger
package function to make use of it, while we don't currently have any function that can do what you propose. Furthermore, if you would like to calculate the distance, it should make more sense to use the integrated low-dimensional representation which can be accessed with getMatrix(lig, "H.norm")
, rather than using UMAP which distorts it in some degree.
from liger.
@mvfki
Thank you for your advice. Is H.norm the multi-species integrated factor matrix I obtained after performing UINMF?
from liger.
Yes, you run runUINMF()
first and then quantileNorm()
to finish the factor alignment. H.norm
is what you get after quantile normalization.
from liger.
Related Issues (20)
- Problems with scaleNotCenter() HOT 2
- Prepare for upcoming Seurat v5 release HOT 1
- Bug in Seurat's wrapper function HOT 1
- cran package archived HOT 6
- NaNs during `SelectGenes()` HOT 1
- Error on makeFeatureMatrix HOT 1
- How to improving similarity between snRNA-seq and snATAC-seq nuclei, by tuning parameters like 'k', 'lambda'? HOT 4
- Dataset specificity plot
- Issue with loading old liger object via convertOldLiger function HOT 3
- Error in `signal_stage()` HOT 4
- invalid type "list" in R_matrix_as_sparse error HOT 3
- no slot name "defaultCluster" for this object of class "liger" HOT 1
- Query on building shared factor neighborhood graph HOT 2
- Error when performing the Wilcoxon test on the peak counts HOT 1
- Error in ImputeKNN
- I cannot find joint cluster result in liger object HOT 2
- Error When Using `createLiger` with HDF5 File HOT 2
- Loading a dataset generated with 'liger' using 'rliger' HOT 4
- setting axis limits with plotGeneDimRed HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from liger.