提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、Seurat处理单细胞矩阵数据
  • 二、使用步骤
    • 1.引入库
    • 2.读入数据
    • 3.转置后的数据保存
    • 4.Seurat矩阵数据处理
  • 总结

前言

R语言使用Seurat对单细胞RNA-seq矩阵进行标准化和选取2000个高变基因,并提取处理以后的数据矩阵。


一、Seurat处理单细胞矩阵数据

R语言使用Seurat对单细胞RNA-seq矩阵进行标准化和选取2000个高变基因,并提取处理以后的数据矩阵。

二、使用步骤

1.引入库

代码如下:

BiocManager::install("hdf5r") #生物学包安装方法
library(Seurat)

2.读入数据

代码如下:

data_sample <- read.csv(file="D:/single_cell project/10X_PBMC.csv", header= F) #导入数据
# 数据类型为行是细胞,列是基因
dat <- as.matrix(data_sample) #dataframe转换为矩阵类型
dat1 <- t(dat)  # 矩阵转置,行代表基因,列是细胞

Seurat的输入格式:行是基因(特征),列是细胞(样本)


3.转置后的数据保存

write.csv(dat1,"D:/single_cell project/PBMC_tran.csv",row.names = F,col.names = F)
# 不要头文件,不要列索引# 按照上面方法保存的.csv数据,在R语言中读取:
data <- read.csv(file="D:/single_cell project/PBMC_tran.csv") #导入数据,注意斜杠# 按照上面方法保存的.csv数据,在Python中读取:
df = pd.read_csv("D:/single_cell project/PBMC_tran.csv", header=0)
pbmc  = df.values #在Python中dataframe转化为矩阵类型

提供了python和R读取.csv格式数据,里面的参数自行调节


4.Seurat矩阵数据处理

data_seurat <- CreateSeuratObject(data,project = "data_sample")
#后面就可以单细胞处理的标准流程啦pbmc <- NormalizeData(data_seurat) # 进行标准化,默认参数
norm <- pbmc[["RNA"]]@data # 读取标准化以后的矩阵数据
norm1 <- as.matrix(norm) #转化为矩阵形式
norm <- t(norm1) # 矩阵转置,行代表细胞,列代表基因
write.csv(norm,"D:/single_cell project/PBMC_norm.csv",row.names = F,col.names = F)
# 保存标准化之后的数据矩阵
# 按照上面方法保存的.csv数据,在R语言中读取:
data <- read.csv(file="D:/single_cell project/PBMC_tran.csv") #导入数据,注意斜杠pbmc <- FindVariableFeatures(pbmc,selection.method = "vst",nfeatures = 2000) #注意使用的是pbmc
# 按照"vst"方法选取2000个高变基因
top <- head(VariableFeatures(pbmc),2000) #读取选取的2000个高变基因的索引pb <- norm1[top,]  #注意使用的是norm1
#按照索引选出相应的基因,即相应的行
p <- as.matrix(pb)
P <- t(p) # 转置,行为细胞,列为基因
dim(P) # 查看矩阵维度,确认一下write.csv(P,"D:/single_cell project/PBMC_select2000_norm.csv",row.names = F,col.names = F)
#保存处理好的矩阵数据
dat11 <- read.csv(file="D:/single_cell project/PBMC_select2000_norm.csv")
#重新导入数据,查看数据类型是否对
#数据格式:行是细胞,列是基因

处理过程中一定要注意需要处理的数据对不对
各个阶段数据的格式对不对,行列各代表什么


总结

以上就是今天要讲的内容,本文仅仅简单介绍了Seurat的简单使用,而Seurat是R语言强大的包,提供了大量地处理单细胞数据的方法。

Seurat处理与数据读取相关推荐

  1. 『TensorFlow』数据读取类_data.Dataset

    一.资料 参考原文: TensorFlow全新的数据读取方式:Dataset API入门教程 API接口简介: TensorFlow的数据集 二.背景 注意,在TensorFlow 1.3中,Data ...

  2. linux 读取大量图片 内存,10 张图帮你搞定 TensorFlow 数据读取机制

    导读 在学习tensorflow的过程中,有很多小伙伴反映读取数据这一块很难理解.确实这一块官方的教程比较简略,网上也找不到什么合适的学习材料.今天这篇文章就以图片的形式,用最简单的语言,为大家详细解 ...

  3. 数据读取与数据扩增方法

    ↑↑↑关注后"星标"Datawhale 每日干货 & 每月组队学习,不错过 Datawhale干货 作者:樊亮.黄星源.Datawhale优秀学习者 本文对图像数据读取及图 ...

  4. 图像数据读取及数据扩增方法

    Datawhale干货 作者:王程伟,Datawhale成员 本文为干货知识+竞赛实践系列分享,旨在理论与实践结合,从学习到项目实践.(零基础入门系列:数据挖掘/cv/nlp/金融风控/推荐系统等,持 ...

  5. Task02——零基础入门NLP - 新闻文本分类之数据读取与分析

    本期目标 学习使用Pandas读取赛题数据 分析赛题数据的分布规律 数据读取 import pandas as pd train_df=pd.read_csv('./train_set.csv/tra ...

  6. 单细胞数据读取(二)之Read10X读不出来dgCMatrix报错

    前面我们也遇到过10x的数据读取不进去,如果大家遇到下面的报错,可以通过修改10x的原始重新读取,详细可以见链接https://blog.csdn.net/weixin_43949246/articl ...

  7. livechart 只显示 y 值_基于Python语言的SEGY格式地震数据读取与显示编程

    敬请关注<地学新视野> 摘要:本文简单介绍了SEG-Y地震数据文件格式,以及如何用Python语言编写读写SEG-Y格式的地震数据并绘制地震剖面,其中用到了Segyio和matplotli ...

  8. TensorFlow数据读取方式:Dataset API,以及如何查看dataset:DatasetV1Adapter的方法

    TensorFlow数据读取方式:Dataset API Datasets:一种为TensorFlow 模型创建输入管道的新方式.把数组.元组.张量等转换成DatasetV1Adapter格式 Dat ...

  9. python读取dat数据anaconda_基于python的大数据分析-pandas数据读取(代码实战)

    我们常见的数据存储格式无非就是csv.excel.txt以及数据库等形式. 数据读取 在pandas中可以使用一些函数完成数据的读取.比如read_csv.read_excel.read_table. ...

最新文章

  1. 2021年大数据Spark(五十二):Structured Streaming 事件时间窗口分析
  2. mysql 5.7 多实例主从_mysql-5.7.20源码安装 + 多实例 + 主从复制
  3. 单片机中灯泡显示miss_单片机实例分享,如何设计八路抢答器
  4. Chrome控制台用法
  5. 009-MailUtils工具类模板
  6. html 标签 r语言,从R中的字符串中删除html标签
  7. ubuntu1204 dvd 用tweak后界面起不来 swap设置4g足够32位系统软件用
  8. NLP︱高级词向量表达(一)——GloVe(理论、相关测评结果、Rpython实现、相关应用)
  9. java 递归求二进制,java-二进制搜索递归猜测数字
  10. 腾讯云 cos计费说明
  11. 【回归预测】基于matlab麻雀算法SSA优化混合核极限学习机KELM回归预测【含Matlab源码 1646期】
  12. pdf编辑器如何在pdf上修改
  13. expandable长点击的实现
  14. ajax提交图片流,img显示
  15. 2029年会实现通用人工智能吗?
  16. 建诗筑画 文/奥斯·科特林
  17. 唯一登录、联合登录、单点登录——唯一登录
  18. golang学习之negroni对于第三方中间件的使用分析
  19. 设计模式--迭代器模式
  20. karaf学习 (2)

热门文章

  1. iOS开发中需要的素材
  2. android 新版的设计规范(Material Design)
  3. Ant design Pro of vue 实战一
  4. Transaction Processing Monitor(事务处理监视器),TP服务,TP监控服务
  5. webstorm提示Page'....'页面未经授权的警告解决方法
  6. java 静态变量命名_java中变量的命名规范是什么?
  7. 【IJCV 2022】RIConv++: Effective Rotation Invariant Convolutions for 3D Point Clouds Deep Learning
  8. css(一)- 引入方式
  9. Quartz.NET 2.0 学习笔记(5) :实例创建Windows服务实现任务调度 Quartz.NET 项目地址 http://quartznet.sourceforge.net/ Quar
  10. WordPress5.8正式发布了,更新完网站更快了!