首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >单细胞的marker基因整理示例

单细胞的marker基因整理示例

作者头像
用户11414625
发布于 2025-06-29 04:07:44
发布于 2025-06-29 04:07:44
5100
代码可运行
举报
文章被收录于专栏:生信星球520生信星球520
运行总次数:0
代码可运行

0.需求

单细胞的marker基因整理,要求一行是一个细胞和一个基因,但我们从文献中查找的结果未必规范。如果一个细胞有多个marker基因,应分布在多行上。

1.读取数据

GCmarker.txt文件内容如下,将其放在工作目录下。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
G;GAST
X;GHRL
D;SST
PMC;MUC5AC
GMC;MUC6
parietal;ATP4A,ATP4B,GIF
chief;PGA4,PGA3,LIPF
T;CD2, CD3D,CD3E,CD3G
B;CD79A,CD19
mast;TPSAB1,TPSB2
Macrophage;CD14, CD163, CD68, CSF1R
Fibroblasts;FAP, PDPN,COL1A2,DCN, COL3A1,COL6A1
Endothelial;PECAM1,VWF,ENG,MCAM
stem;OLFM4,SOX2,LGR5,CCKBR
SMC;ACTA2,ACTN2,MYL2,MYH2
PC;MKI67,BIRC5,CDK1
goblet;TFF3,SPINK4,MUC2
enteroendocrine;CHGA,CHGB,TAC1,TPH1,NEUROG3
enterocytes;FABP1,CA1,VIL1

上次我的学生整理了一个,是手动整理的,太费事了。所以我来教一个函数自动完成!

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
rm(list = ls())
markers = read.delim("GCmarker.txt",header = F,sep = ";")
head(markers,20)
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
##                 V1                                  V2
## 1                G                                GAST
## 2                X                                GHRL
## 3                D                                 SST
## 4              PMC                              MUC5AC
## 5              GMC                                MUC6
## 6         parietal                     ATP4A,ATP4B,GIF
## 7            chief                      PGA4,PGA3,LIPF
## 8                T                 CD2, CD3D,CD3E,CD3G
## 9                B                          CD79A,CD19
## 10            mast                        TPSAB1,TPSB2
## 11      Macrophage            CD14, CD163, CD68, CSF1R
## 12     Fibroblasts FAP, PDPN,COL1A2,DCN, COL3A1,COL6A1
## 13     Endothelial                 PECAM1,VWF,ENG,MCAM
## 14            stem               OLFM4,SOX2,LGR5,CCKBR
## 15             SMC               ACTA2,ACTN2,MYL2,MYH2
## 16              PC                    MKI67,BIRC5,CDK1
## 17          goblet                    TFF3,SPINK4,MUC2
## 18 enteroendocrine         CHGA,CHGB,TAC1,TPH1,NEUROG3
## 19     enterocytes                      FABP1,CA1,VIL1
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
nrow(markers)
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
## [1] 19

可见,一共有19种细胞,每种细胞对应一个或多个基因。

2.行的拆分

一个细胞对应多个基因的行,拆分成多行。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
library(tidyr)
markers = separate_rows(markers,V2,sep = ",")
head(markers,20)
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
## # A tibble: 20 × 2
##    V1         V2      
##    <chr>      <chr>   
##  1 G          "GAST"  
##  2 X          "GHRL"  
##  3 D          "SST"   
##  4 PMC        "MUC5AC"
##  5 GMC        "MUC6"  
##  6 parietal   "ATP4A" 
##  7 parietal   "ATP4B" 
##  8 parietal   "GIF"   
##  9 chief      "PGA4"  
## 10 chief      "PGA3"  
## 11 chief      "LIPF"  
## 12 T          "CD2"   
## 13 T          " CD3D" 
## 14 T          "CD3E"  
## 15 T          "CD3G"  
## 16 B          "CD79A" 
## 17 B          "CD19"  
## 18 mast       "TPSAB1"
## 19 mast       "TPSB2" 
## 20 Macrophage "CD14"
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
nrow(markers)
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
## [1] 55

19行变成了55行,一行一个细胞一个基因。

有的基因名称前面有空格,会影响后续的画图,可以用trimws函数去除每个基因名前后的空格。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
markers$V2 =  trimws(markers$V2)
head(markers,20)
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
## # A tibble: 20 × 2
##    V1         V2    
##    <chr>      <chr> 
##  1 G          GAST  
##  2 X          GHRL  
##  3 D          SST   
##  4 PMC        MUC5AC
##  5 GMC        MUC6  
##  6 parietal   ATP4A 
##  7 parietal   ATP4B 
##  8 parietal   GIF   
##  9 chief      PGA4  
## 10 chief      PGA3  
## 11 chief      LIPF  
## 12 T          CD2   
## 13 T          CD3D  
## 14 T          CD3E  
## 15 T          CD3G  
## 16 B          CD79A 
## 17 B          CD19  
## 18 mast       TPSAB1
## 19 mast       TPSB2 
## 20 Macrophage CD14

完工

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

本文分享自 生信星球 微信公众号,前往查看

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

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

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