From d5bd2ce9cc4f4ff2079bed220ff4293049c17262 Mon Sep 17 00:00:00 2001 From: "Shao, Xin" Date: Thu, 3 Nov 2022 20:59:10 +0800 Subject: [PATCH] update --- README.md | 2 +- data/scRNA/example.rda | Bin 7144764 -> 0 bytes data/scRNA/sc_data.csv | 22899 ++++++++++++++++++++++++++++++++++ data/scRNA/sc_meta.csv | 516 + data/stRNA/st_data.csv | 997 ++ data/stRNA/st_meta.csv | 931 ++ data/stRNA/starmap_data.rda | Bin 214668 -> 0 bytes data/stRNA/starmap_meta.rda | Bin 7000 -> 0 bytes 8 files changed, 25344 insertions(+), 1 deletion(-) delete mode 100644 data/scRNA/example.rda create mode 100644 data/scRNA/sc_data.csv create mode 100644 data/scRNA/sc_meta.csv create mode 100644 data/stRNA/st_data.csv create mode 100644 data/stRNA/st_meta.csv delete mode 100644 data/stRNA/starmap_data.rda delete mode 100644 data/stRNA/starmap_meta.rda diff --git a/README.md b/README.md index ad48b0e..34a817e 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Cell-cell communication -[![dockerhub-container](https://img.shields.io/badge/dockerhub-container-yellowgreen?logo=docker)](https://hub.docker.com/repository/docker/shaoxin0801/cell-cell-communication) +[![dockerhub-container](https://img.shields.io/badge/dockerhub-container-yellowgreen?logo=docker)](https://hub.docker.com/repository/docker/shaoxin0801/cell-cell-communication) [![jupyter](https://img.shields.io/badge/Computational--tools-cell--cell%20communication-yellow?logo=jupyter)](https://github.com/shaoxin0801/Cell-cell-communication/tree/main/method) Collection of computational tools for [cell-cell communication inference for single-cell](https://pubmed.ncbi.nlm.nih.gov/32435978/) and spatially resolved omics, including epigenomics, transcriptomics, proteomics, metabolomics, etc. Welcome contribution. Please folk this repository and create a pull request if you have an update. Please Cite us by "Shao, X. and Fan, X. Collection of computational tools for cell-cell communication inference for single-cell and spatially resolved omics (2022)". diff --git a/data/scRNA/example.rda b/data/scRNA/example.rda deleted file mode 100644 index d7e7e270af816731df99872870aa8c62b81b5f84..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7144764 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