首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >GEO样本名称处理和对照夹杂影响后续分析吗,如何获取样本名称

GEO样本名称处理和对照夹杂影响后续分析吗,如何获取样本名称

原创
作者头像
小辫子
发布2025-06-12 22:26:27
发布2025-06-12 22:26:27
1150
举报
文章被收录于专栏:基因表达芯片基因表达芯片

title: "GEO样本名称,处理和对照夹杂,如何获取样本名称"

output: html_document

editor_options:

chunk_output_type: console


需要R包版本2.3.1及以上

代码语言:r
复制
rm(list = ls())
#打破下载时间的限制,改前60秒,改后10w秒
options(timeout = 100000) 
options(scipen = 20)#不要以科学计数法表示

#GEO的样本名称,处理和对照夹杂,如何获取样本名称?
#读入数据
data <- data.table::fread("gsm_group.txt",data.table = F,header = F)
names(data) <- c("GSM","group")
data[1,2]
#> [1] "whole_blood_control_1"
data[102:106,2]
#> [1] "whole_blood_control_34" "whole_blood_case_69"   
#> [3] "whole_blood_control_35" "whole_blood_case_70"   
#> [5] "whole_blood_case_71"

方法一:tidyr包

代码语言:r
复制
library(dplyr)
library(tidyr)
metadata <- data %>% 
  separate(group,into = c("drop","group"),sep = "_blood_") %>% 
  select(-drop) %>% 
  separate(group,into = c("group","drop"),sep = "_") %>% 
  select(-drop)
metadata[1,2]
#> [1] "control"
metadata[102:106,2]
#> [1] "control" "case"    "control" "case"    "case"

#只是去除了冗余信息,其实样本顺序没变,处理和对照依旧夹杂

方法二:正则表达式——str_match

代码语言:r
复制
library(stringr)
group <- str_match(data$group,"whole_blood_(.*)_.*")
metadata2 <- data.frame(GSM=data$GSM,group=group[,2])
metadata2[102:106,2]
#> [1] "control" "case"    "control" "case"    "case"

#同样只是去除了冗余信息,其实样本顺序没变,处理和对照依旧夹杂

综上,只要能成功区分,并且分组与样本是一一对应的即可,无论是"control""control" "case""case",还是"control""case""case""control",也就是处理和对照夹杂,并不会影响后续分析。

引用自果子学生信

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

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

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

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

评论
作者已关闭评论
0 条评论
热度
最新
推荐阅读
目录
  • 方法一:tidyr包
  • 方法二:正则表达式——str_match
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档