在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的教程,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

香港服务器首选树叶云,2H2G首月10元开通。
树叶云(shuyeidc.com)提供简单好用,价格厚道的香港/美国云服务器和独立服务器。IDC+ISP+ICP资质。ARIN和APNIC会员。成熟技术团队15年行业经验。

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/185561.html<

(0)
运维的头像运维
上一篇2025-03-29 09:54
下一篇 2025-03-29 09:56

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注