承接国内外服务器租用托管、定制开发、网站代运营、网站seo优化托管接单、网站代更新,新老站点皆可!!咨询QQ:3787320601

在linux中用同一个版本的R 同时安装 Seurat2 和 Seurat3的教程

管理员 2023-08-08 07:57:56 软件开发 0 ℃ 0 评论 4480字 收藏

在linux中用同一个版本的R 同时安装 Seurat2 和 Seurat3的教程

Seurat  作为单细胞分析中的重量级R包,有多好用用,用过的人都知道。Seurat 分析流程基本涵盖了单细胞分析中的所有常见分析方法,包括filtering,tSNE,UMAP降维及画图等。还有一个重量级功能就是改正区别实验之间的批次效应。但是Seurat 2和Seurat 3的改正方法完全不一样,得到的结果也不一致。

Seurat 2是基于CCA (典型相关性)的,可以改正肿瘤,外周血及癌旁组织间由于实验带来的批次效应,也能很好的改正用区别的单细胞实验平台进行实验带来的批次效应。虽然速度慢,效果或者不错的。而Seurat 3 则是基于样本间具有类似表达谱的细胞群来进行改正,对同一种性质的实验,由于区别单细胞技术酿成的实验批次效应,seurat 3 能够很好的改正。从官网给的pancers改正结果就能够看到其改正能力多么强大。但是正式由于如此强大的改正能力,对肿瘤和外周血样本的改正却过了头,致使不该分在一起的细胞具有了类似的基因表达谱。本人也是做了好几个课题,发现都存在这样的问题,因此果断放弃Seurat 3的改正方法,继续用Seurat 2的。但是Seurat 3的 findmarker 这个功能可以一次计算10万以上的细胞不报错,而Seurat 2就不行,折衷的方案是同时安装 Seurat 2和 Seurat 3的包,在内存里切换数据,而不用写到本地后再用Seurat 3读取后升级。

特别是对动辄10几万个细胞来讲,保存数据到本地这个操作要花费最少30min, 读取也要30min.

下面我就告知大家不用读写到本地就能够在Seurat 2 和 Seurat 3之间完善切换,。

其实方法很简单,将Seurat 2和 Seurat 3 安装在区别的 library 里面就好了。

我已安装好了,以我自己进行的自由切换为例:

> R.version
        _             
platform    x86_64-conda_cos6-linux-gnu
arch      x86_64           
os       linux-gnu         
system     x86_64, linux-gnu     
status                  
major     3             
minor     6.1            
year      2019            
month     07             
day      05             
svn rev    76782           
language    R             
version.string R version 3.6.1 (2019-07-05)
nickname    Action of the Toes  

 我用的是最新的R版本 3.6.1很好用。

默许的library 是conda 自带的

> .libPaths()
[1] "/data/home/heshuai/anaconda3/lib/R/library"

默许的Seurat是最新版的 Seurat 3

> library(Seurat)
Registered S3 method overwritten by 'R.oo':
 method    from   
 throw.default R.methodsS3
> packageVersion("Seurat")
[1] ‘3.0.2'

我在另外一个library 里安装了 Seurat 2

/data/home/heshuai/R/x86_64-conda_cos6-linux-gnu-library

在二者间自由切换

1. 首先将 Seurat 2 所在的library 加载进来

> .libPaths("/data/home/heshuai/R/x86_64-conda_cos6-linux-gnu-library")
> .libPaths()
[1] "/data/home/heshuai/R/x86_64-conda_cos6-linux-gnu-library" "/data/home/heshuai/anaconda3/lib/R/library"      
>

2. detach Seurat 3 后加载 Seurat 2, 由于这个时候Seurat 2 所在的library 已在Seurat 3 之前了,系统会默许先加载Seurat 2

> detach("package:Seurat", unload = T)
> library(Seurat)
Loading required package: ggplot2
RStudio Community is a great place to get help: https://community.rstudio.com/c/tidyverse.
Loading required package: cowplot
 
********************************************************
Note: As of version 1.0.0, cowplot does not change the
 default ggplot2 theme anymore. To recover the previous
 behavior, execute:
 theme_set(theme_cowplot())
********************************************************
 
Loading required package: Matrix
> packageVersion("Seurat")
[1] ‘2.3.4'
>  

现在Seurat 3已成功的切换成Seurat 2了. 想要加载Seurat 3的时候,将默许library 换到Seurat 2的前面便可。

是不是是 so easy ! 

总结

以上所述是小编给大家介绍的在linux中用同一个版本的R 同时安装 Seurat2 和 Seurat3的教程,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

文章来源:丸子建站

文章标题:在linux中用同一个版本的R 同时安装 Seurat2 和 Seurat3的教程

https://www.wanzijz.com/view/69773.html

上一篇:python的plt画图

下一篇:python的orb程序

相关文章

Related articles

X

截屏,微信识别二维码

微信号:weimawl

(点击微信号复制,添加好友)

打开微信