Coder Social home page Coder Social logo

comunet's Introduction

COMUNET

Intercellular communication plays an essential role in multicellular organisms and several algorithms to analyse it from single-cell transcriptional data have been recently published, but the results are often hard to visualise and interpret. We developed COMUNET (Cell cOMmunication exploration with MUltiplex NETworks), a tool that streamlines the interpretation of the results from cell-cell communication analyses. COMUNET uses multiplex networks to represent and cluster all potential communication pathways between cell types. The algorithm also enables the search for specific patterns of communication and can perform comparative analysis between two biological conditions. To exemplify its use, here we apply COMUNET to investigate cell communication patterns in single-cell transcriptomic datasets from mouse embryos and from an acute myeloid leukemia patient at diagnosis and after treatment.

Installation

For installation, please use the following command:

devtools::install_github("ScialdoneLab/COMUNET/COMUNET")

Tutorials

There are following tutorials available:

  1. 1_PrepareData.ipynb
  2. 2_CellPhoneDBanalysis.ipynb
  3. 3_LRP_clustering.ipynb

These tutorials use mouse embryo data from Nowotschin et al., 2019.

The 1_PrepareData.ipynb tutorial describes the steps of data processing from the raw counts and annotation to normalised filtered counts and filtered annotation. If you prefer to skip this step, you can find the normalised filtered counts and filtered annotation in the tutorial folder.

The 2_CellPhoneDBanalysis.ipynb tutorial describes the steps to run CellPhoneDB (Vento-Tormo et al., 2018, Efremova et al., 2020 analysis using the normalized filtered counts and filtered annotation. If you prefer to skip this step, you can find the results in the cpdb_output subfolder.

Please note that COMUNET does not necessarily rely on the results of CellPhoneDB algorithm. You can use any algorithm of choice, which generates weight matrices, which represent how likely/strong is the interaction between two different cell types mediated by a given pair of proteins.

The 3_LRP_clustering.ipynb tutorial describes the COMUNET clustering of interacting partners.

  1. 1_PrepareData.ipynb
  2. 2_CellPhoneDBanalysis.ipynb
  3. 3_PatternSearch.ipynb

These tutorials use mouse embryo data from Nowotschin et al., 2019.

The tutorials 1_PrepareData.ipynb and 2_CellPhoneDBanalysis.ipynb are the same, as described above.

The tutorial 3_PatternSearch.ipynb describes the COMUNET cell-cell communication pattern search procedure.

  1. 1_PrepareData.ipynb
  2. 2_CellPhoneDBanalysis.ipynb
  3. 3_ComparativeAnalysis.ipynb

These tutorials use human AML data from van Galen et al., 2019.

The tutorials 1_PrepareData.ipynb and 2_CellPhoneDBanalysis.ipynb describe equivalent procedures, as described above. If you prefer to skip tutorial 1_PrepareData.ipynb, you can find the normalised filtered counts and filtered annotation in the tutorial subfolders AML328_d0_forComparative and AML328_d29_forComparative. If you prefere to skip tutorial 2_CellPhoneDBanalysis.ipynb, you can find the results in the cpdb_output subfolders of the AML328_d0_forComparative and AML328_d29_forComparative. As mentioned above, COMUNET does not necessarily rely on the results of CellPhoneDB algorithm. You can use any algorithm of choice, which generates weight matrices, which represent how likely/strong is the interaction between two different cell types mediated by a given pair of proteins.

The tutorial 3_ComparativeAnalysis.ipynb describes the COMUNET comparative analysis between communication patterns in a day 0 AML sample and the sample of the same patient at day 29 after therapy.

comunet's People

Contributors

soloveymaria avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

comunet's Issues

Installation on up to date R distributions

There is an issue regarding installation of COMUNET on up to date distribution, namely with the dependencies on ComplexHeatmap and SDMTools.

Environment

I tested installation on R versions 4.1.1, 4.2.0 and 4.2.1, but I expect similar problems occuring on all versions >3.6.2

Expected behaviour

When using the command given in the installation section
devtools::install_github("ScialdoneLab/COMUNET/COMUNET")
COMUNET and its dependencies should be installed.

Actual behaviour

R tries to install COMUNET but fails to install the above mentioned dependencies.

Suggestion

Adding the used functions from the two packages directly into COMUNET would solve the issue. Another option would be to get it working and find a way to add COMUNET to CRAN to also avoid similar issues occuring in the future.

Workaround

It is possible to just download the R files from the Github and manually inserting them into the used R files using source(). When using functions depending on ComplexHeatmap and SDMTools, these can also be downloaded and included (here and here.

Another way without manually including all files is installing the dependencies directly and afterwards installing COMUNET:

  • It is possible to install ComplexHeatmap manually using
    ``if (!require("BiocManager", quietly = TRUE))
    install.packages("BiocManager")

    BiocManager::install("ComplexHeatmap")``
    as given here

  • SDMTools gives more trouble, as it doesn't exist on CRAN anymore. There are three possible ways to install it:

  1. One can try the method mentioned here: install.packages("remotes") remotes::install_version("SDMTools", "1.1-221")
    This didn't work for me.

  2. If Rtools is installed it may be possible to directly download and build the .tar.gz files. This also didn't work for me.

  3. Lastly one can try to install SDMTools using the Github mirror:: devtools::install_github("cran/SDMTools)")

After one verified that these two are installed it is possible to use the command from the installation section and install COMUNET.

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.