From 12c52a55f75f9826b9fe9960d894f4567a4f4e90 Mon Sep 17 00:00:00 2001 From: Sidney Bell Date: Tue, 7 Aug 2018 07:42:45 -0700 Subject: [PATCH] Very minor changes to elaborate in a few places --- README.md | 80 +++++++++++++++++++++++++++---------------------------- 1 file changed, 40 insertions(+), 40 deletions(-) diff --git a/README.md b/README.md index adb54b5a..06a58793 100644 --- a/README.md +++ b/README.md @@ -21,84 +21,84 @@ Started in the context of the Human Cell Atlas Consortium, cellxgene hopes to bo - OS: OSX, Windows, Linux - python 3.6 - npm -- Google Chrome +- Google Chrome -**Clone project** - - git clone https://github.com/chanzuckerberg/cellxgene.git +**Clone project** + + git clone https://github.com/chanzuckerberg/cellxgene.git + +**Install client** -**Install client** - cd cellxgene - ./bin/build-client + ./bin/build-client -**To use with virtual env for python** -(optional, but recommended) - - ENV_NAME=cellxgene - python3 -m venv ${ENV_NAME} - source ${ENV_NAME}/bin/activate +**To use with virtual env for python** +(optional, but recommended) -**Install server** - - python3 setup.py install + ENV_NAME=cellxgene + python3 -m venv ${ENV_NAME} + source ${ENV_NAME}/bin/activate + +**Install server** + + python3 setup.py install + +**Run (with demo data)** -**Run (with demo data)** - cellxgene --title PBMC3K scanpy example-dataset/ -*In google chrome, navigate to the viewer via the web address printed in your console. +*In google chrome, navigate to the viewer via the web address printed in your console. E.g.,* `Running on http://0.0.0.0:5005/` **Help** - + cellxgene --help -_For help with the scanpy engine_ - +_For help with the scanpy engine_ + cellxgene scanpy --help ## Using your own data ### Scanpy -To prepare you data you will need to format your data into AnnData format using scanpy and calculate PCA and nearest neighbors and save in h5ad format. +To prepare your data you will need to format your data into AnnData format using scanpy and calculate PCA and nearest neighbors and save in h5ad format. -1. [Load data into scanpy](https://scanpy.readthedocs.io/en/latest/api/index.html#exporting) +1. [Load data into scanpy](https://scanpy.readthedocs.io/en/latest/api/index.html#reading) - - Ensure that `obs`'s index is the cell names + - Ensure that `obs`'s index is the cell names: `print(data.obs_names)` should show your cell indices. If it shows gene names, you may need to just call `data.transpose()`. 2. Calculate PCA - sc.pp.pca(data) - -3. Calculate nearest neighbors (depending on layout algorithm) - + sc.pp.pca(data) ## sc is scanpy.api + +3. Calculate nearest neighbors (depending on layout algorithm) + ``` - # For umap layout algorithm + # For umap layout algorithm, you need to use the "umap" method for neighbors sc.pp.neighbors(data, method="umap", metric="euclidean", use_rep="X_pca") - - # For tsne layout algorithm + + # For tsne layout algorithm, you can use either "umap" or "gauss"; we recommend "gauss" sc.pp.neighbors(data, method="gauss", metric="euclidean", use_rep="X_pca") ``` - + 4. Save file ``` # cellxgene requires file to be named data.h5ad data.write("data.h5ad") ``` - + 5. Create config file (optional) If you do not have a config file, the schema (metadata names, types, and categorical/continuous) will be inferred from the observations in the data file. Config file is required to be named 'data_schema.json' and located in the same directory as data file. - - The config file is a JSON format file with information on the metadata associated with the cells. The key is the column name in obs. The value is an object + - The config file is a JSON format file with information on the metadata associated with the cells. The key is the column name in obs. The value is an object ``` type: string, int, or float (what type the values are), - variabletype: categorical or continuous (categorical values are displayed as checkboxes, continuous values are displayed as a histogram) - displayname: (what the heading should be displayed as) - include: True/False (whether to display values on web interface) + variabletype: categorical or continuous (categorical values are displayed as checkboxes, continuous values are displayed as a histogram) + displayname: (what the heading should be displayed as) + include: True/False (whether to display values on web interface) + ``` + ``` - - ``` Example { "CellName": {