从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功能富集分析展示图。

相关推荐
图件制作GIS,储量计算8 小时前
补充耕地质量验收实施细则(试行)
arcgis·数据挖掘·数据分析
数智化管理手记11 小时前
财务大数据怎么管住资金风险?财务大数据和财务数智化到底怎么结合?
大数据·网络·数据库·人工智能·数据挖掘
ClickHouseDB13 小时前
ClickHouse 开源十年:数据分析领域的中流砥柱
clickhouse·数据分析·开源
Ai_easygo16 小时前
多Agent数据分析报告自动化实战:用CrewAI组支AI团队,丢份数据就出报告(从架构到评估)
人工智能·数据分析·自动化
2601_9627809117 小时前
统计学转数据分析靠谱吗?其实专业优势很明显:别把自己当纯转行
数据挖掘·数据分析
Dylan的码园17 小时前
从Excel到数据库:数据分析全流程与Kettle ETL实战指南
数据库·数据分析·excel
暖和_白开水18 小时前
数据分析agent(九):es_client_manager.py 和分词器ik_max_word问题
elasticsearch·数据分析·c#
XIAOYU67201319 小时前
软件工程转数据分析现实吗?适合哪些学生
数据挖掘·数据分析·软件工程
hrrrrxeeeee19 小时前
选择AI证书时,为什么要看考试内容而不是宣传文案
大数据·人工智能·数据挖掘·数据分析
fanstuck1 天前
1M 上下文能怎么用?我用 Seed Evolving 做了一个招标文件版本差异审查器
服务器·人工智能·数据分析·开源·aigc