首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >单细胞专栏-如何给orig.ident换名字

单细胞专栏-如何给orig.ident换名字

原创
作者头像
小胡子刺猬的生信学习123
发布于 2022-05-10 13:53:43
发布于 2022-05-10 13:53:43
10.1K10
代码可运行
举报
运行总次数:0
代码可运行

​由于上游的分析是公司给做的,但是发现我在跟他们说样本名字的时候发错了,想后面自己更改一下每个orig.ident和groups的名字,百度了一下有没有类似问题,果然在seurat的官网上发现了类似的问题(https://github.com/satijalab/seurat/issues/1479

)。

代码整理

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
##官网上回答问题的作者给予的回答
> # Quickly preview the metadata
> head(x = pbmc_small[[]])
                  orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8
ATGCCAGAACGACT SeuratProject         70           47               0
CATGGCCTGTGCAT SeuratProject         85           52               0
GAACCTGATGAACC SeuratProject         87           50               1
TGACTGGATTCTCA SeuratProject        127           56               0
AGTCAGACTGCACA SeuratProject        173           53               0
TCTGATACACGTGT SeuratProject         70           48               0
               letter.idents groups RNA_snn_res.1
ATGCCAGAACGACT             A     g2             0
CATGGCCTGTGCAT             A     g1             0
GAACCTGATGAACC             B     g2             0
TGACTGGATTCTCA             A     g2             0
AGTCAGACTGCACA             A     g2             0
TCTGATACACGTGT             A     g1             0
> # Create a new metadata column called "original" with the contents of "orig.ident"
> pbmc_small$original <- pbmc_small$orig.ident
> # Remove the "orig.ident" metadata column
> pbmc_small$orig.ident <- NULL
> # Quickly preview the metadata again
> head(x = pbmc_small[[]])
               nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
ATGCCAGAACGACT         70           47               0             A     g2
CATGGCCTGTGCAT         85           52               0             A     g1
GAACCTGATGAACC         87           50               1             B     g2
TGACTGGATTCTCA        127           56               0             A     g2
AGTCAGACTGCACA        173           53               0             A     g2
TCTGATACACGTGT         70           48               0             A     g1
               RNA_snn_res.1      original
ATGCCAGAACGACT             0 SeuratProject
CATGGCCTGTGCAT             0 SeuratProject
GAACCTGATGAACC             0 SeuratProject
TGACTGGATTCTCA             0 SeuratProject
AGTCAGACTGCACA             0 SeuratProject
TCTGATACACGTGT             0 SeuratProject
##You can add metadata columns using AddMetaData, the [[ operator, or the $ operator. For your specific case, I would create a character vector of 'ctrl' or 'patient' based on testing the value of your metadata column, then add it in like I did above.

由于后面需要加入addmetadata这个函数,因此就想起了前几天做复现的时候用过这个函数,因此准备直接搬运,把作者的代码改了改。

首先需要一个xlsx格式的表格,将自己想要的信息填上,类似于以下的格式。

xlsx表格示例
xlsx表格示例

其中有一列需要与自己的矩阵里面的信息一样,因为后面我们要用left_join进行合并,我这里选用的是orig.ident。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
##load library,先加载一堆有的没的包,防止后面代码找不到函数,没办法调取
library(Seurat)
library(dplyr)
library(reticulate)
library(sctransform)
library(cowplot)
library(ggplot2)
library(viridis)
library(tidyr)
library(magrittr)
library(reshape2)
library(readxl)
library(progeny)
library(readr)
library(stringr)
##先读取xlsx格式的表格
metatable <- read_excel("id_change.xlsx")
metadata <- FetchData(seu_obj, "orig.ident")
metadata$cell_id <- rownames(metadata)
metadata$sample_id <- metadata$orig.ident
##left_join:左连接,保留X中得所有观测,这样可以保留原表数据
metadata <- left_join(x = metadata, y = metatable, by = "orig.ident")
rownames(metadata) <- metadata$cell_id
##AddMetaData:添加元数据列;AddMetaData()中传递给元数据参数的内容必须是具有与数据@meta.data中的行名匹配的行名的数据框
seu_obj <- AddMetaData(seu_obj, metadata = metadata)
##查看矩阵情况
head(seu_obj)
##发现多了original、sample_id、cell_id、Groups几列,需要把original替换为orig.ident
##如果是cell_id及sample_id自己研究不在需要,可以跳过那两行代码
##删去orig.ident行,参考seurta官网答疑的代码
seu_obj$orig.ident <- NULL
##新生成orig.ident的一列
seu_obj$orig.ident <- seu_obj$original
##删去original列
seu_ob$original <- NULL
##查看seurat对象情况
seu_obj
##选择新给予的分组进行test,看看能不能有图出来,表明改的是合理的
DimPlot(seu_obj, group.by = "orig.ident",  pt.size = 0.1)

测试的umap图
测试的umap图

总结

目前是通过手动改矩阵的列没有发现问题,明天还需要跟公司那边讨论一下这种方法的可行度怎么样,但是能出图,基本保证一部分还是改对了,后面有可能需要对barcode进行再一次的修改。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

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

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

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

评论
登录后参与评论
1 条评论
热度
最新
回复回复点赞举报
推荐阅读
编辑精选文章
换一批
单细胞数据复现-肺癌文章代码复现2
昨天是先对数据初步的质量进行过滤,今天是对过滤后的数据进行标准化和后面开始进行分群。其实还是比较流程的,但是还是有些东西是很细节的,是一些学习的片段的推文比不了的,主要是因为相对的是这是文章已经发表的文章,思路相对比较成熟。
小胡子刺猬的生信学习123
2022/05/07
2.2K6
单细胞数据复现-肺癌文章代码复现2
scRepertoire||单细胞免疫组库分析:R语言应用(二)
通过检查克隆空间,我们可以有效地观察特定比例下克隆所占的相对空间。另一种思考方法是把整个免疫受体测序看作一个量杯(总量)。在这个杯子里,我们将填充不同粘度的液体-或不同数量的克隆比例。克隆空间内稳态是问以不同比例(或者是不同粘度的液体,类推)填充的克隆杯子的百分比是多少。比例切点在函数中cloneType变量下设置,可以进行调整,以下为基准:
生信技能树jimmy
2020/09/23
3.5K0
scRepertoire||单细胞免疫组库分析:R语言应用(二)
AddModuleScore 对单细胞基因集打分及可视化
在此选择的pathway通路及基因集(基于文章给出的部分基因)是我自己选用,并没有特别的生物学意义,只是做一下可视化展示。
生信菜鸟团
2023/10/07
4K0
AddModuleScore 对单细胞基因集打分及可视化
单细胞免疫组库数据分析||Seurat整合单细胞转录组与VDJ数据
在做10X单细胞免疫组库分析的是往往是做一部分BCR、TCR做一部分5‘转录组,那么怎样才能把两者结合到一起呢?
生信技能树jimmy
2020/06/05
4.3K0
什么?一个单细胞样本变成俩了?
众所周知,单细胞转录组数据的输入文件是多种多样的,详见:不同文件格式单细胞数据读取流程
用户11414625
2024/12/20
1050
什么?一个单细胞样本变成俩了?
Seurat Weekly NO.05 || 大数据集处理之Pseudocell
记得17年的时候,单细胞文章的样本数很少大于10 ,2020年的今天,单篇文章讨论的细胞数以已经翻了好几番。同时,鉴于单细胞的很多分析点是借鉴bulk RNA的,在细胞数大幅提升后,计算资源和模型的适用性有时候会受到挑战。
生信菜鸟团
2021/01/05
1.3K0
使用scHCL探索单细胞转录组细胞类型
浙江大学郭国骥团队致力于单细胞测序领域的相关研究,2020年3月26日,郭国骥团队在nature发表了人类单细胞水平的细胞景观。文章题目为:Construction of a Human Cell Landscape at Single-cell Level
生信技能树jimmy
2020/04/27
1.8K0
单细胞数据复现-肺癌文章代码复现1
由于老板给定的研究方向是做单细胞组学的,跟以往的组学都是不太一样的,导致学的相当吃力,同时网上的一部分的代码是分段的,有的时候学习不到相关的分析的思路,因此看到这篇文章,作者把全部的代码都整理到一个网站上了,然后提供给相关的研究人员进行后面的复现,真是太优秀了,必须打call,复现好香,自己不用调试代码,自己最近调试到要疯,希望自己变成哪吒,三个脑子。
小胡子刺猬的生信学习123
2022/05/06
2.9K2
单细胞数据复现-肺癌文章代码复现1
单细胞实战之样本整理,细胞注释和部分图表绘制---从入门到进阶(初级篇1)
在完成了马拉松课程后,我们应该对单细胞分析有了基本了解。接下来,我们将开启新的篇章——单细胞实战:从入门到进阶。
凑齐六个字吧
2025/02/08
3120
单细胞实战之样本整理,细胞注释和部分图表绘制---从入门到进阶(初级篇1)
单细胞转录组高级分析一:多样本合并与批次校正
实际的科研项目中不可能只有一个样本,多样本的单细胞数据如何合并在一起,是否需要校正批次效应呢?先上一张图说明多样本scRNA数据的批次效应:
生信技能树jimmy
2020/09/04
39K8
单细胞转录组高级分析一:多样本合并与批次校正
R tips:如何折叠DotPlot的细胞标注
Seurat绘制细胞的marker DotPlot时,如果细胞名称过长或者相应细胞的marker gene太少则可能会导致细胞名称显示不全,看如下实例,以Seurat自带的pbmc_small数据集为例,寻找其差异表达gene作为绘制Dotplot的marker gene。
生信菜鸟团
2025/07/08
930
R tips:如何折叠DotPlot的细胞标注
单细胞Seruat和h5ad数据格式互换(R与python)方法学习和整理
先将 Seurat V5 对象中的 Assay5 类型转换为 Seurat 旧版本中的 Assay 类型,然后再进行转化
凑齐六个字吧
2024/09/27
8440
单细胞Seruat和h5ad数据格式互换(R与python)方法学习和整理
桑基图在单细胞数据探索中的应用
桑基图(Sankey diagram),即桑基能量分流图,也叫桑基能量平衡图。它是一种特定类型的流程图,图中延伸的分支的宽度对应数据流量的大小,比较适用于用户流量等数据的可视化分析。因1898年Matthew Henry Phineas Riall Sankey绘制的“蒸汽机的能源效率图”而闻名,此后便以其名字命名为“桑基图”。
生信技能树jimmy
2020/03/27
2.1K0
对比Seurat,scanpy单细胞操作技巧汇总
不知不觉,时光飞逝,跟曾老师学习单细胞已经有一段时间,在学习使用软件进行单细胞数据分析时,发现通过对比seurat学习,学习scanpy会比较丝滑,总结了如下的10个实用小技巧。
生信技能树jimmy
2024/03/18
1.1K0
对比Seurat,scanpy单细胞操作技巧汇总
人人都需掌握的单细胞分群聚类分析&Marker基因的可视化
批量转录组测序可以为组织或细胞系的整体基因表达提供信息但无法解析不同细胞间的异质性问题;单细胞测序则可提供每个单个细胞的基因表达特征,允许研究者探索细胞类型、细胞状态、细胞亚群等更细致的分子特征。由于单细胞测序数据具有高度异质性,因此需要特定的数据分析方法来处理和解释数据,如聚类分析、降维算法等。这里意味着单细胞测序分析要比批量转录组的分析更为发杂。
生信菜鸟团
2023/11/14
4K0
人人都需掌握的单细胞分群聚类分析&Marker基因的可视化
R包基础实操—tidyverse包
核心软件包是ggplot2、dplyr、tidyr、readr、purrr、tibble、stringr和forcats,它们提供了建模、转换和可视化数据的功能。
生信技能树jimmy
2021/10/11
3.6K0
R包基础实操—tidyverse包
单细胞专题 | 6.单细胞下游分析——不同类型的数据读入
单细胞专题 | 1.单细胞测序(10×genomics技术)的原理 单细胞专题 | 2.如何开始单细胞RNASeq数据分析 单细胞专题 | 3.单细胞转录组的上游分析-从BCL到FASTQ 单细胞专题 | 4.单细胞转录组的上游分析-从SRA到FASTQ 单细胞专题 | 5.单细胞转录组的上游分析-从FASTQ到count矩阵
DoubleHelix
2022/12/16
4.2K0
单细胞专题 | 6.单细胞下游分析——不同类型的数据读入
单细胞多数据集整合示例
有很多人有或多或少的原因并不会自己做单细胞实验送测序,加上目前单细胞转录组数据上传在公共数据库的数据也有不少了,大家会倾向于从公共数据集中筛选出多个数据集来做整合分析。所以这周推文打算从理论角度,跟大家分享一下多个数据集整合分析的代码。
生信菜鸟团
2023/12/21
2.4K0
单细胞多数据集整合示例
单细胞测序—标准流程代码(1)
现在的单细胞测序很少是单个样本测序了,一般是多个样本。这里用ifnb.SeuratData包中的ifnb示例数据来模拟单细胞测序多样本分析流程。
sheldor没耳朵
2024/08/20
9330
单细胞测序—标准流程代码(1)
单细胞降维聚类分群注释全流程学习(seruat5/harmony)
https://mp.weixin.qq.com/s/drmfwJgbFsFCtoaMsMGaUA
凑齐六个字吧
2024/09/07
4090
单细胞降维聚类分群注释全流程学习(seruat5/harmony)
推荐阅读
相关推荐
单细胞数据复现-肺癌文章代码复现2
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档