Coder Social home page Coder Social logo

mahlaranjeet / cellchat Goto Github PK

View Code? Open in Web Editor NEW

This project forked from sqjin/cellchat

0.0 1.0 0.0 56.31 MB

R toolkit for inference, visualization and analysis of cell-cell communication from single-cell data

License: GNU General Public License v3.0

C++ 0.44% R 99.56%

cellchat's Introduction

CellChat: Inference and analysis of cell-cell communication

Update

Nov 12, 2022 (Version 1.6.0)

CellChat is now applicable to spatial imaging data. We showcase its application to 10X Visium data. When spatial locations of spots/cells are available, CellChat infers spatial-informed cell-cell communication between interacting cell groups. CellChat restricts cell-cell communication within the maximum interaction/diffusion length of molecules.

A brief tutorial for spatial imaging data analysis is available in the tutorial directory. CellChat's various functionality can be used for further data exploration, analysis, and visualization.

We have redesigned the structure of CellChat object. When loading previous CellChat object (version < 1.6.0), please update the object via updateCellChat.

For the version history and detailed important changes, please see the NEWS file.

Capabilities

In addition to infer the intercellular communication from any given scRNA-seq data, CellChat provides functionality for further data exploration, analysis, and visualization.

  • It is able to analyze cell-cell communication for continuous states along cellular development trajectories.
  • It can quantitatively characterize and compare the inferred cell-cell communication networks using an integrated approach by combining social network analysis, pattern recognition, and manifold learning approaches.
  • It provides an easy-to-use tool for extracting and visualizing high-order information of the inferred networks. For example, it allows ready prediction of major signaling inputs and outputs for all cell populations and how these populations and signals coordinate together for functions.
  • It provides several visualization outputs to facilitate intuitive user-guided data interpretation.

Check out our paper (Jin et al., Nature Communications, 2021) for the detailed methods and applications.

Installation

CellChat R package can be easily installed from Github using devtools:

devtools::install_github("sqjin/CellChat")

Please make sure you have installed the correct version of NMF and circlize package. See instruction below.

Installation of other dependencies

  • Install NMF (>= 0.23.0) using install.packages('NMF'). Please check here for other solutions if you encounter any issue. You might can set Sys.setenv(R_REMOTES_NO_ERRORS_FROM_WARNINGS=TRUE) if it throws R version error.
  • Install circlize (>= 0.4.12) using devtools::install_github("jokergoo/circlize") if you encounter any issue.
  • Install ComplexHeatmap using devtools::install_github("jokergoo/ComplexHeatmap") if you encounter any issue.
  • Install UMAP python pacakge for dimension reduction: pip install umap-learn. Please check here if you encounter any issue.

Some users might have issues when installing CellChat pacakge due to different operating systems and new R version. Please check the following solutions:

  • Installation on Mac OX with R > 3.6: Please re-install Xquartz.
  • Installation on Windows, Linux and Centos: Please check the solution for Windows and Linux.

Tutorials

Please check the tutorial directory of the repo.

Web-based “CellChat Explorer”

We build a user-friendly web-based “CellChat Explorer” that contains two major components:

  • Ligand-Receptor Interaction Explorer that allows easy exploration of our novel ligand-receptor interaction database, a comprehensive recapitulation of known molecular compositions including multimeric complexes and co-factors. Our database CellChatDB is a manually curated database of literature-supported ligand-receptor interactions in both human and mouse.
  • Cell-Cell Communication Atlas Explorer that allows easy exploration of the cell-cell communication for any given scRNA-seq dataset that has been processed by our R toolkit CellChat.

We also developed a standalone CellChat Shiny App for our Cell-Cell Communication Atlas Explorer.

Help, Suggestion and Contribution

If you have any question, comment or suggestion, please use github issue tracker to report coding related issues of CellChat.

Before reporting an issue

  • First check the GitHub issues to see if the same or a similar issues has been reported and resolved. This relieves the developers from addressing the same issues and helps them focus on adding new features!
  • The best way to figure out the issues is running the sources codes of the specific functions by yourself. This will also relieve the developers and helps them focus on the common issues! I am sorry, but I have to say I have no idea on many errors except that I can reproduce the issues.
  • Minimal and reproducible example are required when filing a GitHub issue. In certain cases, please share your CellChat object and related codes to reproduce the issues.
  • Users are encouraged to discuss issues and bugs using the github issues instead of email exchanges.

Contribution

CellChat is an open source software package and any contribution is highly appreciated!

We use GitHub's Pull Request mechanism for reviewing and accepting submissions of any contribution. Issue a pull request on the GitHub website to request that we merge your branch's changes into CellChat's master branch. Be sure to include a description of your changes in the pull request, as well as any other information that will help the CellChat developers involved in reviewing your code.

System Requirements

  • Hardware requirements: CellChat package requires only a standard computer with enough RAM to support the in-memory operations.

  • Software requirements: This package is supported for macOS, Windows and Linux. The package has been tested on macOS: Mojave (10.14.5) and Windows 10. Dependencies of CellChat package are indicated in the Description file, and can be automatically installed when installing CellChat pacakge. CellChat can be installed on a normal computer within few mins.

How to cite?

Suoqin Jin et al., Inference and analysis of cell-cell communication using CellChat. Nature Communications, 12:1088 (2021). https://www.nature.com/articles/s41467-021-21246-9

cellchat's People

Contributors

sqjin avatar caowei-um avatar

Watchers

James Cloos avatar

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.