Coder Social home page Coder Social logo

pcreode's Introduction

p-Creode

Build Status codecov PyPI version Downloads

Please let us know if you run into any issues or have any questions, through the issues page above or by email: [email protected].

The term creode was coined by C.H. Waddington, combining the Greek words for “necessary” and “path” to describe the cell state transitional trajectories that define cell fate specification. Our algorithm aims to identify consensus routes from relatively noisy single-cell data and thus we named this algorithm p- (putative) Creode. Conceptually, p-Creode determines the geometric shape of a collection of dense data points (i.e., a data cloud) in order to reveal the underlying structure of transitional routes. p-Creode is compatible with Python 2 (2.7) and Python 3 (3.7).

Tutorial files: Jupyter notebook

Example: Data file

Installation for Mac or Linux

There are three ways to install p-Creode with Mac/Linux operating systems.

  1. Install from github
git clone https://github.com/Ken-Lau-Lab/pCreode
cd pCreode
sudo pip install .

With this install, the jupyter notebook tutorial and the example scRNA-seq myeloid data set can be accessed in the notebook and data directories on your machine.

  1. Install from pip
sudo pip install pcreode

Then manually download the juypter notebook and example data file from the folders above. Simply right click on the download button and select "Save link as...".

Homebrew and anaconda install courtesy of Dan Skelly.

  1. Install through brew and github, and generate a contained conda environment for pcreode
brew install igraph
git clone https://github.com/Ken-Lau-Lab/pCreode
cd pCreode
conda create -n pcreode python=3.7 numpy pandas matplotlib python-igraph jupyter cython
source activate pcreode
pip install .

Mac note:

For Mac users, Cairo may or may not be installed. If you have problems plotting, you need to install Cairo. Please follow the instructions in this link.

In addition, some Mac users have experienced issues installing igraph, here is a link to instructions for a direct install on a Mac

Installation for Windows

The problem with p-Creode installation on a Windows machine is with the python-igraph package, where there seems to be a bug in the setup. Hence, additional steps must be taken.

  1. Install Anaconda

  2. Install the following packages:

pip install pycairo
pip install igraph
  1. Install pcreode from github
git clone https://github.com/Ken-Lau-Lab/pCreode
cd pCreode
pip install .

If you are having issues with igraph plotting of graphs please try:

Download the user compile wheels of 2 packages (download the version as appropriate to your Python install) from this link, or follow these direct links to the necessary packages: pyCairo and python-igraph

In Anaconda prompt, go to the directory where the whls are downloaded and install them:

pip install pycairo‑1.18.1‑cp37‑cp37m‑win_amd64.whl
pip install python_igraph‑0.7.1.post6‑cp37‑cp37m‑win_amd64.whl

or

conda install -c conda-forge python-igraph

You will still need to manually download the jupyter notebook and example data file from the folders above to be able to run the tutorial.

Tutorial

Please note that our tutorial for pCreode requires Scanpy for its plotting and preprocessing steps. Scanpy, described by Wolf et al., 2018, is a python package for the organization and analysis of large scale scRNA-seq data. Scanpy documentation is available here. Install scanpy with the following command:

pip install scanpy

Once p-Creode is installed you can access the tutorial by command line (conda environment if using PC) with:

jupyter notebook

The downloaded p-Creode tutorial can be opened by using the jupyter interface to find the directory where it was saved. A brief introduction to jupyter notebook can be found here.

Python 2 support and tutorial

pCreode can be run in python 2 as well, please see the python 2 version of the tutorial and its example data file

pcreode's People

Contributors

bobchen1701 avatar herrinca avatar kenlaulab avatar yilinyang123 avatar

Watchers

 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.