单细胞数据分析-SPmarker使用流程

2022-07-23 21:51:11 浏览数 (1)

这篇文章是发表在NP上的文章,主要是用的机器学习的方法来寻找植物的marker基因的文章。

图片.png图片.png

现在主要是对软件的流程来进行test的分析。

软件的讲解链接:https://github.com/LiLabAtVT/SPMarker

图片.png图片.png

introduntion

为了剖析每个细胞的生物学功能,分析单细胞 RNA 测序数据的一个重要步骤是用标记基因对特定细胞类型进行分类。在这项研究中,我们开发了一种称为单细胞预测标记 (SPmarker) 的机器学习管道来分配细胞类型并识别拟南芥根中的新细胞类型标记基因。我们的方法可以 (1) 基于使用已发布方法标记的细胞分配细胞类型,(2) 将通过轨迹分析识别的细胞类型从一个数据集投影到其他数据集,以及 (3) 基于内部 GFP 标记分配细胞类型。使用 SPmarker,我们已经确定了数百个新的标记基因,并且这些机器学习衍生的标记基因中的大多数以前没有被识别出来。与已知的标记基因相比,我们在相应的水稻单细胞簇中发现了更多这些新标记基因的直系同源基因。我们还在五种非拟南芥属物种中发现了 172 个新的 Trichoblast 标记基因,这将这种细胞类型的标记基因数量增加了 35-154%。我们的结果代表了一种从 scRNA-seq 数据中识别细胞类型标记基因的新方法,并为植物中 scRNA-seq 数据的跨物种作图铺平了道路。

图片.png图片.png

Dependence and requirements

首先是需要保证后面自己的安装环境中含有作者需要的以下的环境内容。

如果没有,作者推荐选用conda安装。

代码语言:javascript复制
conda create -n py37 python=3.7
conda activate py37
conda install pandas
conda install scikit-learn
conda install -c conda-forge shap
conda install keras

将上述的内容安装完后,开始对spmarker这个软件进行安装。

Quick Start

Installation

代码语言:javascript复制
##Download SPmarker

git clone https://github.com/LiLabAtVT/SPMarker.git

##Use scripts wrapped in the SPmarker to run pipeline

Required input data

首先是按照官网上的内容,我选用的是安装软件里面的案例进行运行。

代码语言:javascript复制
python SPmarker.py -d working_dir/ -o output_dir/ -mtx ipt_test1_gene_cell_mtx.csv -meta ipt_test1_meta.csv

这个时候会出现一个问题是因为这个软件是在python的环境下进行的,很多依赖的模块没有下,会持续性的一直说没有这个模块。

代码语言:javascript复制
##缺少模块的安装
pip install xxx ##xxx为模块的名称
图片.png图片.png

主要的报错:The TensorFlow library was compiled to use AVX instructions, but these aren't available on your machine。

报错后显示的是tensorflow的library,因此我主要参考的这篇github的内容:https://github.com/tensorflow/tensorflow/issues/24548

我选用的是conda安装。

代码语言:javascript复制
##conda安装
conda create -n tensorflow_env tensorflow=2
conda activate tensorflow_env
##测试是否成功安装
##python环境
(tensorflow_env) mehdi@moneta:~> python
Python 3.7.7 (default, Mar 26 2020, 15:48:22) 
[GCC 7.3.0] :: Anaconda, Inc. on linux
Type "help", "copyright", "credits" or "license" for more information.
 import tensorflow as tf
msg = tf.constant(f"Hello World from {tf.__version__}")
print(msg)
tf.Tensor(b'Hello World from 2.1.0', shape=(), dtype=string)

随后再次进行尝试,发现缺少了很多的依赖的module,因此大部分都是选择的pip和conda进行安装。

图片.png图片.png

目前是已经运行结束。查看结果文件中也有相关的结果。

图片.png图片.png

总结

主要是一步一步的按照官网上的内容进行尝试,然后在缺少的module的时候进行补充安装,由于每个人的环境是不一样的,因此后续有可能会碰到不同的缺少module的结果,主要是根据自己的环境来进行补module。下面就可以大致根据自己的目的,然后更改文件的格式进行markergene的机器学习。

0 人点赞