数字化转型网数据专题将关注数据治理、数据质量管理、数据架构、主数据管理、数据仓库、元数据管理、数据备份、数据挖掘、数据分析、数据安全、大数据、数据合规、等数据相关全产业链相关环节。

一、下载GEO数据(第二种下载方式,通过代码方式)
首先,我们需要从GEO数据库中下载数据。假设我们感兴趣的RNA-seq数据集编号是GSE84402,这是一项肝细胞癌(HCC)相关的研究。我们将使用R包GEOquery来下载数据。
# 新建一个 GSE84402_geo.R 脚本文件
# 加载必要的R包
library(GEOquery)
library(limma) # library(stringr)
# 下载GSE84402数据集,指定下载目录为当前工作目录数字化转型网www.szhzxw.cn
gset = getGEO(‘GSE84402’, destdir=”.”, AnnotGPL = F, getGPL = F)
在这段代码中,我们使用getGEO()函数下载了指定的GSE数据集。destdir参数指定了数据下载到的目录,AnnotGPL和getGPL设置为FALSE表示我们不下载平台注释文件和平台信息。class(gset)可以帮助我们检查下载的数据结构。
二、获取样本分组信息
下载的数据通常包括多个样本,我们需要从元数据中提取样本的分组信息,例如肿瘤组和正常组。
# 提取样本的元数据数字化转型网www.szhzxw.cn
pdata <- pData(gset[[1]])
# 查看样本来源
table(pdata$source_name_ch1)
这里我们通过pData()函数提取了样本的元数据。pdata$source_name_ch1包含了每个样本的来源信息,例如肝细胞癌(hepatocellular carcinoma)和正常肝脏。table()函数展示了各组样本的数量分布。
接下来,我们根据样本的来源信息,创建一个新的分组变量:
# 使用字符串匹配方法设置分组
group_list <- ifelse(str_detect(pdata$source_name_ch1, “hepatocellular carcinoma”), “tumor”, “normal”)
# 将分组信息转换为因子型变量
group_list = factor(group_list, levels = c(“normal”, “tumor”))数字化转型网www.szhzxw.cn
在这段代码中,我们使用str_detect()函数检查样本的来源名称,如果样本来源中包含“hepatocellular carcinoma”,则该样本为“tumor”组,否则为“normal”组。factor()函数将分组信息转化为因子型变量,方便后续分析。
三、获取基因表达矩阵并进行标准化
基因表达矩阵是数据分析的基础。我们通过exprs()函数提取了表达矩阵,并通过箱线图查看数据分布。接下来,我们使用limma包对数据进行标准化处理。
# 提取基因表达矩阵
exp <- exprs(gset[[1]])
# 绘制原始表达数据的箱线图,检查样本间的差异
boxplot(exp, outline=FALSE, notch=T, col=group_list, las=2)
dev.off()
这段代码中,我们首先提取了原始的基因表达矩阵exp,并使用boxplot()函数绘制了一个箱线图,展示不同组(肿瘤组和正常组)样本的基因表达分布情况。
接下来,我们使用limma包对数据进行标准化,以去除不同样本间的批次效应:
# 使用limma包进行数据标准化
exp = normalizeBetweenArrays(exp)数字化转型网www.szhzxw.cn
# 绘制标准化后的表达数据箱线图
boxplot(exp, outline=FALSE, notch=T, col=group_list, las=2)
dev.off()
normalizeBetweenArrays()函数会对基因表达矩阵进行标准化,确保不同样本之间的表达量具有可比性。标准化后,我们再次绘制了箱线图,检查数据是否均匀分布。
四、数据变换(log2转换)
为了使数据更加适合后续的差异表达分析,我们对表达数据进行log2变换,以减少高表达基因对整体分析的影响。
# 对表达矩阵进行log2转换
exp <- log2(exp + 1)数字化转型网www.szhzxw.cn
# 查看转换后的数据范围
range(exp)
通过log2(exp + 1)对表达矩阵进行了log2转换,确保数据没有零值。变换后的数据范围也变得更加适合后续的分析和可视化。
五、基因ID转换
GEO数据集中的基因ID通常是probe ID,但为了更容易理解和后续分析,我们需要将其转换为基因的symbol。我们使用hgu133plus2.db包进行ID转换。
# 安装并加载hgu133plus2.db包
if(!require(“hgu133plus2.db”))数字化转型网www.szhzxw.cn
BiocManager::install(“hgu133plus2.db”)
library(hgu133plus2.db)
# 获取平台的基因ID到symbol的映射表
ids <- toTable(hgu133plus2SYMBOL)
# 查看部分ID转换结果
head(ids)
在这里,我们通过toTable(hgu133plus2SYMBOL)获取了probe ID与基因symbol的对应关系。
接下来,我们将表达矩阵与ID转换表进行合并:数字化转型网www.szhzxw.cn
# 将表达矩阵转换为数据框,并添加probe_id列
exp <- as.data.frame(exp)
exp <- exp %>% mutate(probe_id = rownames(exp))
# 合并ID转换信息
exp <- exp %>% inner_join(ids, by = “probe_id”)
# 删除重复的基因symbol
exp <- exp[!duplicated(exp$symbol),]
# 将基因symbol设置为行名
rownames(exp) <- exp$symbol
# 删除原始的probe_id和symbol列
exp <- exp[, -(29:30)]
通过inner_join()函数,我们将表达矩阵与ID转换表合并,确保每个基因只有一个表达值。之后,我们删除了重复的基因symbol,确保每个基因只有一行数据。数字化转型网www.szhzxw.cn
六、保存结果
最后,我们将处理后的基因表达矩阵保存为exp.txt文件,方便后续分析或进一步处理。
# 保存处理后的表达矩阵为txt文件
write.table(exp, file = “GSE84402_exp.txt”, sep = “\t”, row.names = T, col.names = NA, quote = F)
声明:本文来自网络,版权归作者所有。文章内容仅代表作者独立观点,不代表数字化转型网立场,转载目的在于传递更多信息。如有侵权,请联系我们。数字化转型网www.szhzxw.cn
数字化转型网数据专题包含哪些内容
数字化转型网数据专题将关注数据治理、数据质量管理、数据架构、主数据管理、数据仓库、元数据管理、数据备份、数据挖掘、数据分析、数据安全、大数据、数据合规、等数据相关全产业链相关环节。
数字化转型网数据专题包含: 数字化转型网(www.szhzxw.cn)
1、数据相关外脑支持:100+数据相关专家、100+数据实践者、1000+相关资料
2、数据研习社:与全球数据相关专家、实践者共同探讨相关问题,推动产业发展!
3、国际认证培训:目前已引进DAMA国际认证CDMP,其他国内外认证也在逐步引进中
4、典型案例参考:与数字化转型网数据要素X研习社社员一起学习典型案例,共探企业数据落地应用

本文由数字化转型网(www.szhzxw.cn)转载而成,来源于生信学长;编辑/翻译:数字化转型网Jack。

数字化转型网数据专题将关注数据治理、数据质量管理、数据架构、主数据管理、数据仓库、元数据管理、数据备份、数据挖掘、数据分析、数据安全、大数据、数据合规、等数据相关全产业链相关环节。

声明:本文来自网络,版权归作者所有。文章内容仅代表作者独立观点,不代表数字化转型网立场,转载目的在于传递更多信息。如有侵权,请联系我们。数字化转型网www.szhzxw.cn
数字化转型网数据专题包含哪些内容
数字化转型网数据专题将关注数据治理、数据质量管理、数据架构、主数据管理、数据仓库、元数据管理、数据备份、数据挖掘、数据分析、数据安全、大数据、数据合规、等数据相关全产业链相关环节。
数字化转型网数据专题包含: 数字化转型网(www.szhzxw.cn)
1、数据相关外脑支持:100+数据相关专家、100+数据实践者、1000+相关资料
2、数据研习社:与全球数据相关专家、实践者共同探讨相关问题,推动产业发展!
3、国际认证培训:目前已引进DAMA国际认证CDMP,其他国内外认证也在逐步引进中
4、典型案例参考:与数字化转型网数据要素X研习社社员一起学习典型案例,共探企业数据落地应用

本文由数字化转型网(www.szhzxw.cn)转载而成,来源于生信学长;编辑/翻译:数字化转型网Jack。

