Git Product home page Git Product logo

citefuse's Introduction

CiteFuse

CiteFuse is a streamlined package consisting of a suite of tools for pre-processing, modality integration, clustering, differential RNA and ADT expression analysis, ADT evaluation, ligand-receptor interaction analysis, and interactive web-based visualization of CITE-seq data

Installation

Install CiteFuse via Bioconductor

library(BiocManager)
BiocManager::install("CiteFuse")

Install github version CiteFuse

BiocManager::install("SydneyBioX/CiteFuse")

Vignette

You can find the vignette at our website: https://sydneybiox.github.io/CiteFuse/articles/CiteFuse.html.

CiteFuse overview

Citation

Hani Jieun Kim, Yingxin Lin, Thomas A Geddes, Jean Yee Hwa Yang, Pengyi Yang, CiteFuse enables multi-modal analysis of CITE-seq data, Bioinformatics, Volume 36, Issue 14, 15 July 2020, Pages 4137–4143, https://doi.org/10.1093/bioinformatics/btaa282

citefuse's People

Contributors

yingxinlin avatar nturaga avatar hanijieunkim avatar nick-robo avatar jwokaty avatar

Stargazers

Ruidan LIU avatar  avatar Yunhak Oh avatar Sumanta Barman, PhD avatar Devika Agarwal avatar Benjamin Reames avatar Roy Francis avatar Musu Yuan avatar XIA CHENRUI avatar Thomas Ashhurst avatar Kamil Slowikowski avatar f6v avatar  avatar Burak Kutlu avatar Xu Xizhan avatar  avatar Thomas Sandmann avatar Colin Davenport avatar  avatar Zhenghao Chen avatar Yue Cao avatar  avatar  avatar Ming Tang avatar Caleb Lareau avatar Jeff Hammerbacher avatar

Watchers

Dario Strbenac avatar James Cloos avatar Garth Tarr avatar John Ormerod avatar Ellis Patrick avatar CSB Yang Laboratory avatar Samuel Muller avatar Shila Ghazanfar avatar Yue Cao avatar  avatar  avatar  avatar

citefuse's Issues

Working with pre-normalized CITE data from other tools

Good day,
Thank you for making CiteFuse, it's already working great for us!

We wanted to use previously cleaned and denoised data (https://mattpm.github.io/dsb/) and combine it with the CiteFuse pipeline. What would be the easiest way to bypass normalisation from CiteFuse, and just use data normalised from other sources?

Cheers,
Nenad Bartonicek, PhD
Bioinformatic Officer
Centre for Clinical Genomics
Garvan Institute of Medical Research
384 Victoria Street
Sydney NSW 2010
Australia

Apply CiteFuse on 10x feature barcoding data without HTO

Hi, thanks for this wonderful package! I would like to test it on a dataset (single sample) generated by 10x Genomic feature barcoding that does not have HTO data. However, it seems HTO data matrix is required in several functions. Is there a way to bypass the HTO data? Thanks.

Contributing to the OSCA book

Seems like this package could have several appearances in the OSCA book - the demultiplexing section of the droplet processing, the integrated protein abundance chapter, the doublet detection chapter. Would contributing to the book be of interest?

CiteFuse SNF function runtime

Is there anyway to optimize the runtime on CiteFuse()? I'm currently running into issues where it's eating a lot of my RAM and not using any of my cores.

Docker Image Available?

Good morning!

I'm very excited to try CITE-fuse, but I don't have R version 4.0 installed locally yet, and when I install I get this message: ERROR: this R is version 3.6.2, package 'CiteFuse' requires R >= 4.0 Do you have plans to create a docker image for CITE-fuse, or know of one available that I could use?

Thanks!

Jennifer

HTO dataset

Hello,

I was curious if I do not have a HTO expression matrix. What would you recommend to use to look for doublets?

Issue installing package CiteFuse

>library(CiteFuse)
Error: package or namespace load failed for ‘CiteFuse’ in loadNamespace(j <- i[[1L]], c(lib.loc, .libPaths()), versionCheck = vI[[j]]):
 there is no package called ‘propr’

However, I cannot install propr as it's been removed from CRAN repository.

Here is the R code:

> if (!requireNamespace("BiocManager", quietly = TRUE)) {
+     install.packages("BiocManager")
+ }
> BiocManager::install("CiteFuse")
'getOption("repos")' replaces Bioconductor standard repositories, see '?repositories' for details

replacement repositories:
    CRAN: https://cran.rstudio.com/


Bioconductor version 3.15 (BiocManager 1.30.19), R 4.2.2 (2022-10-31 ucrt)
Old packages: 'matrixStats', 'nlme'
Update all/some/none? [a/s/n]: 
a
Warning: package ‘matrixStats’ is in use and will not be installed

  There is a binary version available but the source version is later:
      binary  source needs_compilation
nlme 3.1-160 3.1-161              TRUE

installing the source package ‘nlme’

trying URL 'https://cran.rstudio.com/src/contrib/nlme_3.1-161.tar.gz'
Content type 'application/x-gzip' length 847304 bytes (827 KB)
downloaded 827 KB

* installing *source* package 'nlme' ...
** package 'nlme' successfully unpacked and MD5 sums checked
ERROR: cannot remove earlier installation, is it in use?
* removing 'C:/Users/d.guillotin/AppData/Local/Programs/R/R-4.2.2/library/nlme'
* restoring previous 'C:/Users/d.guillotin/AppData/Local/Programs/R/R-4.2.2/library/nlme'
Warning in file.copy(lp, dirname(pkgdir), recursive = TRUE, copy.date = TRUE) :
  problem copying C:\Users\d.guillotin\AppData\Local\Programs\R\R-4.2.2\library\00LOCK-nlme\nlme\libs\x64\nlme.dll to C:\Users\d.guillotin\AppData\Local\Programs\R\R-4.2.2\library\nlme\libs\x64\nlme.dll: Permission denied

The downloaded source packages are in
	‘C:\Users\d.guillotin\AppData\Local\Temp\RtmpGqOZKG\downloaded_packages’
Warning messages:
1: package(s) not installed when version(s) same as or greater than current; use `force = TRUE` to re-install: 'CiteFuse' 
2: In install.packages(update[instlib == l, "Package"], l, repos = repos,  :
  installation of package ‘nlme’ had non-zero exit status

> library(CiteFuse)
Error: package or namespace load failed for ‘CiteFuse’ in loadNamespace(j <- i[[1L]], c(lib.loc, .libPaths()), versionCheck = vI[[j]]):
 there is no package called ‘propr’

> install.packages("~/propr_4.2.6.tar.gz", repos = NULL)
* installing *source* package 'propr' ...
** package 'propr' successfully unpacked and MD5 sums checked
** using staged installation
** libs
g++ -std=gnu++11  -I"C:/Users/DF0E3~1.GUI/AppData/Local/Programs/R/R-42~1.2/include" -DNDEBUG  -I'C:/Users/d.guillotin/AppData/Local/Programs/R/R-4.2.2/library/Rcpp/include'   -I"c:/rtools42/x86_64-w64-mingw32.static.posix/include"     -O2 -Wall  -mfpmath=sse -msse2 -mstackrealign  -c RcppExports.cpp -o RcppExports.o
sh: line 1: g++: command not found
make: *** [C:/Users/DF0E3~1.GUI/AppData/Local/Programs/R/R-42~1.2/etc/x64/Makeconf:260: RcppExports.o] Error 127
ERROR: compilation failed for package 'propr'
* removing 'C:/Users/d.guillotin/AppData/Local/Programs/R/R-4.2.2/library/propr'
Warning in install.packages :
  installation of package ‘C:/Users/d.guillotin/OneDrive - Achilles Therapeutics Limited/Documents/propr_4.2.6.tar.gz’ had non-zero exit status

clr transformation for ADT

Hi,

I was trying to use clr transformation for ADT. I've got the following message after running CiteFuse normaliseExprs with clr option.

> sce_citeseq.1 <- normaliseExprs(sce_citeseq.1, altExp_name = "ADT", transform = "clr")
<sparse>[ <logic> ] : .M.sub.i.logical() maybe inefficient

Can I ignore the message? Please let me know. Thanks.

Best,
Joon

visImportance improvements

The boxplot option for visImportance() constructs a ggplot object (g) in lines 191~203 of importanceADT.R, which is then printed on line 204. The function would be more flexible if it returned g rather than printing it. This would allow the user to add their own themes, labels, titles, etc via the + operator provided by ggplot and then print it. (Actually, RStudio will print it to the Plots panel automatically and Rmarkdown documents will print plots by default, but calling print() in other contexts is not too painful.) As it is, the text for the ADT names tends to overlap if there are a large number of ADT probes, which would not be a problem if I could adjust the font size, for example.
Thanks for a great package :)

Batch Correction Advice

Good morning!

I really like CiteFuse and have found some interesting results on my datasets! I would like to now combine data across different batches that have clear batch effects. Have you tried any batch correction with CiteFuse to combine data like this? Any tips or suggestions would be greatly appreciated!

Thank you for your work!!

License missing

Hello there, thanks for CiteFuse. Could you please add a license to the repo? Many thanks

batch effect correction when clustering?

Hi, this is a really cool method thank you guys for implementing it!

when dealing with multiple batches we'd usually align the GEX data using any batch correction method (scanorama, cca, harmony, etc...) then run the clustering on the SNN graph built from the corrected DimRed. there's no such a thing for citeseq (yet) although a number of preprints are tackling this now.

Since with citefuse we start with 2 distance matrices computed separately on the modalities, have you guys observed batch effects after joint-modality clustering, have you tested any other way of building a distance matrix from the GEX modality that is corrected for the batch covariate?
thank you.
fabiola

Louvain clustering: choosing resolution

Hi,

I am using the function igraphClustering to perform clustering using "louvain" method. I am wondering, is there a way to change the resolution? When overlaying the ADTs on the embedding, I can clearly see that one cluster is a combination of, what should be, two separate clusters. I would like to increase the resolution in order to capture those two clusters separately. TIA.

CLR normalisation across features or cells?

Dear CiteFuse team,

Great package! Works really well. I also really appreciate all the effort put into making an entire suite of visiualisation tools as well! They are pretty neat.

I have a question on CLR normailsation, is it across features or cells?

Thank you!

Using CiteFuse with MissionBio data

Hi,
I was wondering if is possible use CiteFuse with MissionBio data (Protein + DNA)? I tried using my normalized ADT values, however, given that MissionBio does not have RNA, I do not know how can I bypass this requirement for some of the functions. I would like to use the ADT importance feature as well as perform between sample analysis using a CITE-Seq reference.
Thanks!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.