一文解决Cellphonedb单细胞互作分析及可视化作图(1)

2022-08-10  本文已影响0人  KS科研分享与服务

CellPhoneDB作为出镜率很高的细胞互作分析工具,也是大家公认的。网上有很多教程,按理说在自己单细胞系列也应该出一个教程,但是由于CellPhoneDB是基于python,且需要涉及到Linux的操作,考虑到初学者小伙伴没有基础,一直搁浅。但是还是有小伙伴需要这个,也向我要了,所以我觉得还是有必要写一下,当然和以往一样,是详细注释版,一个一个的汉字,看完应该会清晰!

既然网上有教程,为什么还要写,我想解决以下几个问题:

1、很多人死在第一步:cellphonedb的安装,这个问题不得不解决,因为写教程的都是大佬了,但是我这里必要考虑初学者,所以要从源头解决问题。

2、cellphonedb只能做人的,做鼠的则需要对基因转化,别傻傻的半天没有结果。

3、因为cellphonedb分析操作很简单,数据整理好只需一行代码解决。后期的可视化都是可以在R中进行的。那么,这里我们需要为初学者解决的一个问题是没学过Linux,或者我就想运行一下得到结果,怎么办?所以用很笨的办法,跟着我的代码步骤即可,如果在你的过程中出现错误,学会百度,别人怎么解决你就怎么弄即可。不要问为什么这样,后期会出生物学人小白的Linux从一穷二白的入门!

一、从你的电脑上找到Linux

很多小白不晓得的问题是如何在windows下安装一个Linux,linux其实是一个操作系统,和windows一样,就是操作处理文件等等,现在windows10及以上可以安装Linux子系统(Linux也有桌面版,后续再说),打开Microsoft store, 检索ubuntu(linux的一个发行版,我想这么解释你就懂了,国产手机基本都用安卓系统,但是牌子有很多,你就把Ubuntu理解为牌子吧,背后的操作系统是Linux即可。只是我用的ubuntu,还有Redhat等等,自己选择)。点击安装,选择20或者18的版本都行。苹果操作系统请选择Centos等。

image.png

安装好之后,如何开启使用ubuntu(Linux系统),鼠标桌面右键---选择在终端中打开,我们就进入终端了,选择Ubuntu,进入Linux系统。

image.png

二、安装conda

Conda百度百科的介绍是:Conda 是一个开源的软件包管理系统和环境管理系统,用于安装多个版本的软件包及其依赖关系,并在它们之间轻松切换。

安装Conda的目的是为了方便我们后续软件安装。

#安装下载及环境设置
# 安装一个conda,为什么安装他可以理解为Rstuido之于R,后期在环境设置、软件安装上很方便。
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
# bash安装,按照指引,都选yes,这样一些依赖的python包都安装了。
bash Miniconda3-latest-Linux-x86_64.sh 
#  激活conda环境
source ~/.bashrc

#设置镜像
conda config --add channels r 
conda config --add channels conda-forge 
conda config --add channels bioconda
conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/cloud/bioconda/
conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes

三、Linux下安装R

cellphonedb带了作图功能,但是是依赖于R,所以需要我们提前安装一个R语言。安装过程出现各种错误,我遇到的都在下面,如果遇到新的,解决不了,请记得百度。最后百般折腾下,安装成功了,我只想说一句国粹,QTMD。我是选择本地安装。


#下载R
wget https://cran.r-project.org/src/base/R-4/R-4.2.1.tar.gz
tar -zxvf R-4.2.1.tar.gz#解压
cd R-4.2.1/
./configure #这一步肯定出错
make这一步肯定出错
make install
##########接下来就是各种解决问题,然后继续./configure,直到没有问题

#apt安装出问题
sudo apt-get update
#error:configure: error: in `/home/tq/R-4.0.3':
#configure: error: no acceptable C compiler found in $PATH
Solution:sudo apt-get install gcc
 ./configure --prefix=/home/tq/R-4.0.3
#error:checking whether  accepts -g... no
#configure: error: No Fortran compiler found
Solution:sudo apt-get install gfortran
./configure --prefix=/home/tq/R-4.0.3
#error:configure: error: in `/home/tq/R-4.0.3':
#configure: error: C++ preprocessor "/lib/cpp" fails sanity check
Solution:sudo apt-get install gcc-c++
./configure --prefix=/home/tq/R-4.0.3
#error:configure: error: --with-readline=yes (default) and headers/libs are not available
Solution:./configure --with-readline=no --with-x=no
./configure --with-readline=no --with-x=no
#error:checking whether zlib support suffices... configure: error: zlib library and headers are required
Solution:sudo apt-get install zlib1g-dev
./configure --with-readline=no --with-x=no
#error:checking whether bzip2 support suffices... configure: error: bzip2 library and headers are required
Solution:sudo apt-get install libbz2-dev
./configure --with-readline=no --with-x=no
#error:
configure: error: "liblzma library and headers are required"
Solution:sudo apt-get install libreadline-dev
./configure --with-readline=no --with-x=no
#error:configure: error: PCRE2 library and headers are required, or use --with-pcre1 and PCRE >= 8.32 with UTF-8 support
Solution:sudo apt-get install libpcre2-dev
./configure --with-readline=no --with-x=no
#error:configure: error: libcurl >= 7.28.0 library and headers are required with support for https
Solution:sudo apt-get install libcurl4-openssl-dev

./configure --with-readline=no --with-x=no
R is now configured for x86_64-pc-linux-gnu

  Source directory:            .
  Installation directory:      /usr/local

  C compiler:                  gcc  -g -O2
  Fortran fixed-form compiler: gfortran -fno-optimize-sibling-calls -g -O2

  Default C++ compiler:        g++ -std=gnu++11  -g -O2
  C++14 compiler:              g++ -std=gnu++14  -g -O2
  C++17 compiler:              g++ -std=gnu++17  -g -O2
  C++20 compiler:
  Fortran free-form compiler:  gfortran -fno-optimize-sibling-calls -g -O2
  Obj-C compiler:

  Interfaces supported:
  External libraries:          pcre2, curl
  Additional capabilities:     NLS
  Options enabled:             shared BLAS, R profiling

  Capabilities skipped:        PNG, JPEG, TIFF, cairo, ICU
  Options not enabled:         memory profiling

  Recommended packages:        yes

configure: WARNING: you cannot build info or HTML versions of the R manuals
configure: WARNING: you cannot build PDF versions of the R manuals
configure: WARNING: you cannot build PDF versions of vignettes and help pages

#安装几个包
sudo apt-get install libpng-dev
sudo apt-get install libjpeg-dev
sudo apt-get install libtiff-dev
sudo apt-get install libcairo-dev
sudo apt-get install libicu-dev

make######又是错误
#error:*** Cannot find any Java interpreter
#*** Please make sure 'java' is on your PATH or set JAVA_HOME correspondingly
#Makefile:87: recipe for target 'stamp-java' failed
#make[1]: [stamp-java] Error 1 (ignored)
#make[1]: Leaving directory '/home/tq/R-4.0.3'

Solution:sudo apt install openjdk-11-jdk
./configure --with-readline=no --with-x=no

make
make install
然后就可以了,我只想说一句国粹:TMD

R --version
R version 4.2.1 (2022-06-23) -- "Funny-Looking Kid"
Copyright (C) 2022 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under the terms of the
GNU General Public License versions 2 or 3.
For more information about these matters see
https://www.gnu.org/licenses/.

#说明成功

四、安装cellphonedb

前面的问题解决了,就可以安装cellphonedb了。


conda create -n cellphonedb python=3.9 #这里选择python版本,用最新的吧,没毛病。创建cellphonedb环境
conda activate cellphonedb #激活环境
pip install cellphonedb #安装,指定会出错

#解决办法
#可以不使用pip install cellphonedb,直接用下面这句代码安装
pip install cellphonedb -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com

#判断是否安装成功
#运行
cellphonedb --help
#出现下面页面
Usage: cellphonedb [OPTIONS] COMMAND [ARGS]...

Options:
  --help  Show this message and exit.

Commands:
  database
  method
  plot
  query
#这样就没问题了

这样分析环境就搭建好了,软件也没有问题了,数据分析就很简单了,代码就一句话的事情。我们下节继续。有说的不到位的地方,还请批评指正!

更多精彩内容请至我的公众号《KS科研分享与服务》

上一篇下一篇

猜你喜欢

热点阅读