学术资讯 » 学界研圈

  • 首 页
  • 期刊选题
  • 期刊点评
  • 期刊大全
  • 学人博客
  • 编辑征稿
  • 投稿选刊
  • 投稿群聊
  • 学术会议
  • 万维读书
  • SCI/E期刊
  • SSCI期刊
  • AHCI期刊
  • 单细胞番外---单细胞数据分析及可视化集成R包Scillus(上)

    阅读: 2022/4/8 9:46:01

    之前我们讲述单细胞流程的时候采用的是一篇cell文章,在那个文章里发现了一个R包Scillus,因为文章中有些图也是利用这个包做的,所以看了下。这个包其实是Seurat的集合体,可以进行数据分析,更能进行个性化可视,都是集成函数,值得借鉴学习。

    Scillus包地址:https://github.com/xmc811/Scillus

    我们利用它的示例数据进行演示,读取数据并添加metadata信息。

    1.  #安装  

    2.  if (!require(devtools)) {install.packages("devtools")}  

    3.  devtools::install_github("xmc811/Scillus", ref = "development")  

    4.  library(Scillus)  

    5.  #设置数据信息  

    6.  llibrary(tidyverse)  

    7.  setwd("F:/生物信息学/Scillus单细胞分析可视化包")  

    8.  #metadata  

    9.  a <- list.files("F:/生物信息学/Scillus单细胞分析可视化包", full.names = TRUE)  

    10.  m <- tibble(file = a,   

    11.              sample = stringr::str_remove(basename(a), ".csv.gz"),  

    12.              group =c(rep("CTCL",5),rep("Normal", 4)),  

    13.              stage = rep(c("CTCL1","CTCL2","CTCL3","CTCL4","CTCL5","Nor1","Nor2","Nor3","Nor4"),each=1),  

    14.              sex = rep(c("F","F","M","M","F","M","F","M","F"),each=1))

    下一步和经典的Seurat一样,查看下数据情况,并进行质控。需要指控的指标还是需要看线粒体基因的表达,nCount,nFeature等等。

    1.  library(Scillus)  

    2.  library(tidyverse)  

    3.  library(Seurat)  

    4.  library(magrittr)  

    5.  scRNA <- load_scfile(m)  #加载数据列表

    6.  length(scRNA)  

    7.  plot_qc(scRNA, metrics = "percent.mt")  

    8.  plot_qc(scRNA, metrics = "nFeature_RNA")  

    9.  plot_qc(scRNA, metrics = "nCount_RNA")

    然后进行质控,指控后会自动显示QC前后细胞数的变化。这一点挺好的,不用在QC之前列公式计算,QC后计算,最后还需要做柱状图,大大简化了工作。

    1.  scRNAdata <- filter_scdata(scRNA, subset = nFeature_RNA > 500 & percent.mt < 10& nFeature_RNA < 5000)

    接下来就是Seurat的标准流程了,对数据进行合并,降维聚类。这里使用UMAP进行降维。看整个流程,其实就是对seurat流程的一个集中化。

    1.  #seurat标准流程  

    2.  scRNAdata %<>%   

    3.    purrr::map(.f = NormalizeData) %>%  

    4.    purrr::map(.f = FindVariableFeatures) %>%  

    5.    purrr::map(.f = CellCycleScoring,   

    6.               s.features = cc.genes$s.genes,   

    7.               g2m.features = cc.genes$g2m.genes)  

    8.    

    9.  scRNAdata <- IntegrateData(anchorset = FindIntegrationAnchors(object.list = scRNAdata, dims = 1:30,  k.filter = 30),dims = 1:30)  

    10.  scRNAdata <- ScaleData(object=scRNAdata, vars.to.regress = c("nCount_RNA", "percent.mt", "S.Score", "G2M.Score"))  

    11.  scRNAdata <- RunPCA(object=scRNAdata, npcs = 50, verbose = TRUE)  

    12.  scRNAdata %<>%  

    13.    RunUMAP(reduction = "pca", dims = 1:30, n.neighbors = 30) %>%  

    14.    FindNeighbors(reduction = "pca", dims = 1:30) %>%  

    15.    FindClusters(resolution = 0.4)  

    整理好数据后就可以进行可视化了,如果是已经整理好的seurat对象,也是可以直接用来作图的。我们以之前做的单细胞seurat数据进行可视化。

    先看下降维聚类,只需要一个函数:

    plot_scdata(immune)

    细胞比例也无需繁琐代码:

    plot_stat(immune, plot_type = "prop_fill", group_by = "group")+coord_flip()

    整体的比例有些细胞类型看不清,可以显示单独的每组比例:

    plot_stat(immune,

              plot_type = "prop_multi",

              group_by = "group",

              text_size = 8)

    以上图形的配色都是可以修改的,自行定义。下节我们继续说说其他的可视化。包括marker基因可视化,差异基因筛选,GO、GSEA分析。总之分析还是比较多的,出图质量也是比较高的,可以试试。

    如有侵权,请联系本站删除!

    浏览(749)
    点赞(0)
    收藏(0)
  • 上一篇:房宁 | 《政治学研究》想要什么样的稿子?

    下一篇:帝国理工 UCL 联合全奖博士 本科生可申

  • 首页

  • 文章

  • 期刊

  • 帮助

  • 我的

版权所有 Copyright@2023    备案号:豫ICP备2021036211号