从GEO数据库下载转录组数据分析步骤

如何成为专业的生信人,那就是搞到质量高的测序数据。在各大测序数据库中,作者往往不会将自己整理好的数据直接上传,而是放一个raw data。那我们下载下来是无法直接使用的,需要进行专业处理拿到基因表达矩阵。今天分享一个GEO数据库上载录的于2020年发表的人RNA-seq测序数据,并教大家如何处理。

演示数据获取网址如下

++https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSE114517++

(1) 可以发现作者这里仅提供了两个文件:一个是处理好的差异分析csv文件,这作者好的有点离谱;一个是原始数据压缩包,这才是基本操作。

小贴士:在GEO 数据库的下载栏中,FTP 和 HTTP 是两种用于下载数据的协议。

1.FTP(File Transfer Protocol):通过FTP 下载数据时,会提供一个 FTP 地址,用户可以通过工具连接到 GEO 的服务器并下载文件。适合大文件或批量下载。需要使用支持 FTP 的客户端(如 FileZilla)或命令行工具(如 wget)进行下载。

2.HTTP(Hypertext Transfer Protocol):点击链接即可在浏览器中直接下载文件。

3.custom和http是一种下载格式,只是custom支持单样本数据下载。

(2) 那我们这里直接去下载 处理好的差异分析csv文件,看看文件长什么样子,是不是我们想要的。结果根本打不开这个文件,真是资本家啊。

(3) 只能改道去下载 原始数据压缩包。点击http,下载全部数据。

(4) 将下载的压缩包进行解压缩

(5) 点击进入文件,发现每个样本的txt单独压缩成文件。

(6) 一一打开这些文件后,发现这些txt格式一致:第一行是基因的ENSG名称,第二行是FPKM。下面我们要做的就是合并这些文件,形成一个第一行是样本,第一列是基因名,其余是基因表达值的基因表达矩阵。

(7) 运行下述代码即可获得基因表达矩阵,注意设置R语言路径为解压后的 ++GSE114517_RAW++ 文件夹。

(8) 运行代码后将获得基因表达矩阵的csv文件 接着运行R代码对基因名进行转换。

(9)打开代码运行后保存的文件,可以看到样本名称已经分开,并依次填充到后面单元格,与基因表达值一一对应;基因探针为第一列。现在只需要手动删除第一行,并将A2单元格NA改成Gene Symbol。

(10)现在使用R将基因探针对应成基因名称

(11) 上面 获得的基因转换 内容复制并插入表达矩阵中,并用函数索引进行基因的填充替换。黄色为原基因探针,橙色为复制内容,GENE栏为将要填充的基因探针对应的基因。

(12)非常重要的步骤! 另外,需要注意,原始GEO下载的数据中基因名称后面有小数,那是更新的版本号。需要要选中A列,运行函数 ++=MID(A2,1,15)++ )仅取前15位数字,CTRL+D进行填充,这样就可以获得正确的ENSG了 然后复制插入正确ENSG列,格式仅数字,再删去原先两列。 而R语言处理基因名称转换时候,我们已经用代码处理过了,只需要按代码运行 转换基因名称时 就不会报错。

(13) 使用VLOOKUP函数 进行基因名称的转换 ,公式:

++=VLOOKUP(A:A,B:D,2,FALSE)++

然后选中这一列CTRL+D进行填充,补全公式。

(14) 将GENE这一栏复制为仅数值插入右侧。

(15) 删除前5列即可得到完整的基因表达矩阵。

(16) 将GENE栏按升序排列。

(17)下拉到基因名为N/A的地方并删除。出现基因为N/A的原因是由于基因探针与GENE名称的对应关系在不断变化,或者每个测序公司有非公用探针。这种时候只能忽略这些值,或者更新自己的R包,或者联系文章作者。

(18) 最后,将样本名更改成正常和疾病。回到GEO数据库中查看每个样本代表的是正常还是疾病。可以发现Cont是正常,PD代表发病。

(19) 在基因表达矩阵中更改样本信息。

(2 0 新建一个CSV文件,将样本信息归组,用于后续差异基因分析用。

(21)按照R代码运行,以 logFC 为 1、 P.Value 为 0.05 为筛选目标进行差异基因分析。

(22)保存后的差异基因中注明了每个基因是上调还是下调。

(23)利用差异基因绘制火山图。

(24)火山图展示图。

(25)在火山图上 添加基因。

(26)读入基因表达矩阵,绘制热图。

(27)热图展示图。

(28)利用差异基因进行功能富集分析。可以使用上调、下调、上调+下调或自定义基因进行分析。将需要分析的基因按图所示的格式保存为CSV文件。

(29)运行代码分析GO/KEGG。

(30) GO/KEGG功能富集分析展示图。

相关推荐
SelectDB6 小时前
2026 SelectDB AI 产品发布会:Agent Native 数据基础设施能力全景发布
数据分析·aigc·agent
Hello数据集11 小时前
医疗AI实战:如何利用免疫与内分泌系统疾病数据集训练高精度预测模型?
人工智能·机器学习·数据挖掘·医疗ai
皇儒无上13 小时前
智慧机场-数据挖掘的深度应用
人工智能·数据挖掘
Wonderful U13 小时前
Python+Django实战|企业客户关系管理系统(CRM):客户档案、跟进记录、商机管理、合同签约、回款追踪、客户分层、数据分析
python·数据分析·django
放下华子我只抽RuiKe513 小时前
FastAPI 全栈后端(八):部署与运维
运维·数据库·react.js·oracle·数据挖掘·前端框架·fastapi
留白_13 小时前
Matplotlib绘图
信息可视化·数据分析·matplotlib
KaMeidebaby13 小时前
卡梅德生物技术快报|biotin 生物素标记抗体全流程
前端·人工智能·算法·数据挖掘·数据分析
江畔柳前堤14 小时前
github实战指南00-命令在哪里执行?
人工智能·线性代数·oracle·数据挖掘·github·word
DXM052114 小时前
第11期| 遥感图像分类模型:ResNet_DenseNet原理+实战训练
人工智能·python·深度学习·机器学习·分类·数据挖掘·ageo