title: "GEO样本名称,处理和对照夹杂,如何获取样本名称"
output: html_document
editor_options:
chunk_output_type: console
需要R包版本2.3.1及以上
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"
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"
#只是去除了冗余信息,其实样本顺序没变,处理和对照依旧夹杂
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 删除。