前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >安装Seurat以及读取数据

安装Seurat以及读取数据

作者头像
生信喵实验柴
发布2022-10-25 19:38:07
9160
发布2022-10-25 19:38:07
举报
文章被收录于专栏:生信喵实验柴生信喵实验柴

一、Seurat 简介

Seurat 是一款用于单细胞数据分析的软件,它是一款 R 包。可以对单细胞数据从表达矩阵开始分析。主要可以用于 QC,根据线粒体基因比率进行过滤,细胞分群,差异基因识别,亚细胞分群以及数据可视化等功能,是单细胞研究领域非常著名的工具。

网站:https://satijalab.org/seurat/index.html

Seurat 教程:https://satijalab.org/seurat/articles/get_started.html

虽然 cellranger 也可以直接得到单细胞数据分析的结果,使用 Seruat 更加灵活,通过 R 语言交互式的运行,可以实时进行数据探索,更加方便。

二、软件安装

代码语言:javascript
复制
#安装软件
install.packages('Seurat',lib = "/opt/R/4.2.1/lib/R/library",destdir = '/home/xhs/Rpack/download')
install.packages('tidyverse',lib = "/opt/R/4.2.1/lib/R/library",destdir = '/home/xhs/Rpack/download')
install.packages('patchwork',lib = "/opt/R/4.2.1/lib/R/library",destdir = '/home/xhs/Rpack/download')

三、案例介绍

Seurat 官网提供了大量单细胞分析的案例,包括单细胞表达差异分析,多样品分析,空间转录组等案例,每个案例带有代码和案例数据,直接运行既可以完成分析。这里我们首先练习一个常规单细胞的分析。

https://satijalab.org/seurat/articles/pbmc3k_tutorial.html

数据下载:https://cf.10xgenomics.com/samples/cell/pbmc3k/pbmc3k_filtered_gene_bc_matrices.tar.gz

四、读入数据

代码语言:javascript
复制
# Load the PBMC dataset
pbmc.data <- Read10X(data.dir = "./16.rscrna/filtered_gene_bc_matrices/hg19/")

这个案例中包含了 2700 个细胞的 PBMC 细胞,输入数据为一个 feature-barcode 矩阵,该数据可以直接从 cellranger 的输出结果中获得,文件来自于 filtered_gene_bc_matrices/hg19/目录,里面包含三个文件,分别为

代码语言:javascript
复制
#1 barcodes 文件
barcodes.tsv
#2 基因表达列表
features.tsv
#3 表达矩阵
matrix.mtx

该案例从表达矩阵入手,分别进行了读入数据,创建对象,数据质控过滤。

稀疏矩阵与稠密矩阵:在矩阵中,若数值为 0 的元素数目远远多于非 0 元素的数目时,则称该矩阵为稀疏矩阵。与之相反,若非 0 元素数目占大多数时,则称该矩阵为稠密矩阵。

稀疏矩阵( sparse matrix)

代码语言:javascript
复制
OTU ID sampleA sampleB sampleC
OTU0 0 0 4
OTU1 6 0 0
OTU2 1 0 7
OTU3 0 0 3

稠密矩阵(dense matrix)

代码语言:javascript
复制
sampleA OTU1 6
SampleA OTU2 1
SampleB OTU0 4
SamppleC OTU2 7
SampleC OTU3 3

由于单细胞中大量基因在不同细胞中不表达,因此包含 很多 0 元素。

代码语言:javascript
复制
#查看稀疏矩阵的维度,即基因数和细胞数;
dim(pbmc.data)
dense.size <- object.size(as.matrix(pbmc.data))
dense.size

sparse.size <- object.size(pbmc.data)
sparse.size
#稀疏矩阵占用小空间存储。
rm(list=c('dense.size','sparse.size'))
gc() #释放内存

#预览稀疏矩阵(1~10行,1~6列),. 表示0;
pbmc.data[1:10,1:6]

使用 CreateSeuratObject 函数创建对象,该步骤为分析中最核心的步骤,后续操作都是基于SeuratObject 进行操作,如果该步骤没有问题,后续代码大部分情况下都可以正常运行。数据集中测到的少于 200 个基因的细胞(min.features = 200)和少于 3 个细胞覆盖的基因(min.cells = 3)被过滤掉。

代码语言:javascript
复制
#创建Seurat对象,不同数据集修改project选项
pbmc <- CreateSeuratObject(counts = pbmc.data,project = "pbmc3k",min.cells = 3,min.features = 200)
pbmc
str(pbmc)
class(pbmc)
pbmc@assays
pbmc@meta.data
pbmc@active.assay
pbmc@active.ident
pbmc@graphs
pbmc@project.name
pbmc@version
pbmc@misc
pbmc@commands
pbmc@tools
pbmc@images

写在最后:有时间我们会努力更新的。大家互动交流可以前去论坛,地址在下面,复制去浏览器即可访问,弥补下公众号没有留言功能的缺憾。原地址暂未启用(bioinfoer.com)。

代码语言:javascript
复制
sx.voiceclouds.cn

有些板块也可以预设为大家日常趣事的分享等,欢迎大家来提建议。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-08-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信喵实验柴 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档