GEO数据库提取疾病样本和正常样本|GEO数据库区分疾病和正常样本|直接用|生物信息|生信

GEO百科知识2个月前发布 GEO研究员
1,211 0

GEO数据库提取疾病样本和正常样本|GEO数据库区分疾病和正常样本|直接用|生物信息|生信

代码都可以直接用,修改GSE就可以!

  1. 通过代码查看数据的分类,是疾病还是正常样本
##############################查看对饮GSE样本疾病or正常信息 # 指定GEO数据集的ID gse_id <- "GSE42568" # 使用getGEO函数获取数据集的基础信息 gse_info <- getGEO(gse_id, destdir = ".", AnnotGPL = FALSE ,getGPL = F) #提取临床信息 方法一:$或者@ ,配合str()观察结构 pdata = gse_info$GSE42568_series_matrix.txt.gz@phenoData@data value_counts <- table(pdata$source_name_ch1)#这里可以改为查看pdata中区分疾病样本和正常样本的列名 value_counts 
  1. 根据样本分类和下载处理好的数据进行数据划分,划分成正常和疾病
    我的数据格式如下图
    在这里插入图片描述
# 读取CSV文件 data <- read.csv("new_count_std.csv", row.names = 1) #统一pdata读取的样本名和数据文件中的样本名 colnames(data) <- gsub("X\\.", "", colnames(data)) # 修改列名去掉 "X." colnames(data) <- gsub("\\.$", "", colnames(data)) # 去掉最后的 "." # 从source_name_ch1列中提取样本类型,我这里直接取了最后一个关键字,一般为normal,tumor,cancer这几类可以查看得到 pdata$last_word <- sapply(strsplit(as.character(pdata$source_name_ch1), " "), function(x) tail(x, 1)) # 根据样本类型划分数据 normal_samples <- rownames(pdata[pdata$last_word == "normal", ])#通过pdata$last_word 进行写关键字,不同的数据可能有不同的关键字,下面tumor的也是一样 normal_data <- data[, normal_samples] tumor_samples <- rownames(pdata[pdata$last_word == "cancer", ]) tumor_data <- data[, tumor_samples] # 保存划分后的CSV文件 write.csv(normal_data, "normal_matrix.csv", row.names = TRUE) write.csv(tumor_data, "tumor_matrix.csv", row.names = TRUE) 

这样保存的文件分别就是疾病样本和正常样本了~~~~~~~~有疑问欢迎询问!我会尽可能解答!!!!!!

© 版权声明

相关文章

暂无评论

none
暂无评论...