ARTICLE · 1083499
GEO数据集下载及差异基因筛查(三)
通过前面两节代码,我们已经完成了R包下载和工作路径的建立,现在可以开始下载geo数据集了,选取三个卵巢癌geo数据集进行下载。
上下滑动查看代码
#调用"01_params.R脚本工作环境
source("01_params.R")
suppressPackageStartupMessages({
library(GEOquery)
library(Biobase)
})
#定义要下载的数据集名称
GSE_mrna <- c("GSE14407", "GSE38666", "GSE52037")
#下载过程设置
download_gse <- function(gse_id) {
out_rds <- file.path(DIR_GEO, paste0(gse_id, "_GSEMatrix_list.rds")) #矩阵文件保存名称和位置
#如果文件存在,自动终止运行
if (file.exists(out_rds)) {
message("\n--- ", gse_id, " already exists. Skipping download. ---")
return(NULL)}
#下载矩阵和平台文件
gse_list <- getGEO(gse_id, GSEMatrix = TRUE, AnnotGPL = TRUE)
#将geo数据保存在GEO文件夹下
saveRDS(gse_list, out_rds)
#读取表型文件
eset1 <- gse_list[[1]]
pheno <- pData(eset1)
#保存表型文件在META文件夹下
out_csv <- file.path(DIR_META, paste0(gse_id, "_pData_eset1.csv"))
write.csv(pheno, out_csv, row.names = TRUE)
#过程消息
message("Saved: ", out_rds)
message("Saved: ", out_csv)
message("Platforms in this GSE: ", paste(annotation(eset1), collapse = ", "))
message("Samples in eset1: ", ncol(eset1))
}
#执行下载命令
for (id in GSE_mrna) {
download_gse(id)
}
message("\nAll GEO downloads completed successfully.")
成功下载好后,基因表达矩阵以及表型文件就自动保存在相应的文件夹下了
