当前位置: 首页 > news >正文

100个GEO基因表达芯片或转录组数据处理025.GSE248467

写在前边

虽然现在是高通量测序的时代,但是GEO、ArrayExpress等数据库储存并公开大量的基因表达芯片数据,还是会有大量的需求去处理芯片数据,并且建模或验证自己所研究基因的表达情况,芯片数据的处理也可能是大部分刚学生信的道友入门R语言数据处理的第一次实战,因此准备更新100个基因表达芯片或转录组高通量数据的处理。

数据信息检索

可以看到GSE248467是 高通量测序数据,因此可以使用GEOquery包下临床信息,直接在页面下载 NCBI 生产的转录组表达矩阵 counts 和 tpm 两种进一步处理

使用GEOquery包下载 临床 数据

BiocManager::install('ScienceAdvances/Canton')
Canton::using(using, tidyverse, GEOquery, magrittr, data.table, AnnoProbe, clusterProfiler, org.Hs.eg.db, org.Mm.eg.db,ggdendro,ComplexHeatmap)

注:using作用是一次性加载多个R包,不用写双引号,并且不在屏幕上打印包的加载信息

处理表型数据

这部分是很关键的,可以筛选一下分组表型信息,只保留自己需要的样本,作为后续分析的样本(根据自己的研究目的筛选符合要求的样本)

geo_accession <- "GSE248467"
eSet <- GEOquery::getGEO(geo_accession, AnnotGPL = F, getGPL = F)pdata=Biobase::pData(eSet[[1]]) %>% dplyr::mutate(Sample = geo_accession,Group=stringr::str_split(pdata$title,"_",simplify=T) %>% .[,2]) %>% dplyr::select(Sample,Group) %T>% fwrite(file = stringr::str_glue("{geo_accession}_pdata.csv"))

处理表达谱数据

annot <- fread('Human.GRCh38.p13.annot.tsv.gz') %>% dplyr::select(GeneID, Symbol )counts=fread(glue::glue('{geo_accession}_norm_counts_TPM_GRCh38.p13_NCBI.tsv.gz')) %>% merge(annot,.,by='GeneID') %>% dplyr::select(-GeneID) %>% unique_exprs %T>% fwrite(file = stringr::str_glue("{geo_accession}_counts.csv.gz"))tpm=fread(glue::glue('{geo_accession}_norm_counts_TPM_GRCh38.p13_NCBI.tsv.gz')) %>% merge(annot,.,by='GeneID') %>% dplyr::select(-GeneID) %>% unique_exprs %T>% fwrite(file = stringr::str_glue("{geo_accession}_tpm.csv.gz"))

数据质控

qcplot为自定义函数,作用是绘制用于质控判断的图,如PCA、top20基因热图、树状图,PCA图可以三组区别还是比较明显的

qcplot(data=tpm %>% column_to_rownames('Symbol'), pdata=pdata$Group, w=12,h=12
) 

http://www.xdnf.cn/news/1092619.html

相关文章:

  • AI智能体记忆架构的革命:LangGraph中的分层记忆系统实现
  • JAVA观察者模式demo【设计模式系列】
  • 基于YOLOv11的CF-YOLO,如何突破无人机小目标检测?
  • 【WEB】Polar靶场 21-25题 详细笔记
  • Prometheus+Grafana+node_exporter监控linux服务器资源的方案
  • 分库分表之实战-sharding-JDBC绑定表配置实战
  • CTFHub————Web[信息泄露(目录遍历、PHPINFO)]
  • 1.4 洛谷入门一题单全解
  • Explain关键字
  • Markdown 语法规则
  • 什么是 AMR 格式?简鹿音频转换器轻松批量转换 AMR 为 MP3
  • PHP语法高级篇(一):日期时间处理和包含文件
  • LLaMA 学习笔记
  • 装配式建筑4.0:当房子像汽车一样被“智造”
  • 数据结构——深度优先搜索与广度优先搜索的实现
  • 人机协同的关键枢纽:软件工程3.0中对象模型与模型驱动的融合路径
  • VSCode配置Cline插件调用MCP服务实现任务自动化
  • langchain从入门到精通(四十一)——基于ReACT架构的Agent智能体设计与实现
  • 陶哲轩:数学界的莫扎特与跨界探索者
  • Lingo软件学习(一)好学爱学
  • Grafana容器化部署
  • 工业通讯网关在电子制造中的核心作用——从DeviceNet到Modbus TCP的智能转换
  • Vue响应式原理三:响应式依赖收集-类
  • 【Python】FastApi
  • 腾讯云COS,阿里云OSS对象存储服务-删除操作的响应码204
  • S7-1500——(一)西门子PLC编程从入门到精通4、SCL间接寻址
  • 项目进度受制于资源分配,如何动态调配资源
  • LeetCode 138题解 | 随机链表的复制
  • 5202年安装TensorFlow纪实
  • 向量空间 线性代数