GEO2R数据下载速度慢、基因注释、差异分析、火山图、热图及后续处理

2023-11-06

GEO2R数据分析

首先感谢生信技能树大神jmzeng1314提供的github包,由于我这边访问github比较困难,因此我已经导入到我的 gitee 托管平台 https://gitee.com/swcyo,
特别声明:正版托管地址是https://github.com/jmzeng1314
由于GEO官网下载网址的服务器均位于美国,在国内访问下载麻烦,因此,国内大神jmzeng1314开发了“GEOmirror和AnnoProbe两个神包,二者结合起来可迅速下载GEO数据,并且可以直接注释基因。极力推荐
-需要的包为GEOqueryGEOmirror和AnnoProbe`

#安装bioconductor包GEOquery
if (!requireNamespace("BiocManager", quietly = TRUE))
install.packages("BiocManager")
BiocManager::install("GEOquery")
#安装github包GEOmirror和AnnoProbe
remotes::install_github("jmzeng1314/GEOmirror")
remotes::install_github("jmzeng1314/AnnoProbe")
#三个包同时加载
library(AnnoProbe)
library(GEOmirror)
library(GEOquery) 

操作演示,如GSE42872的下载,矩阵、信息获得、并基因注释
还可以导入以及下载好的数据
在这里插入图片描述

#下载获取GSE13507数据 
gset=AnnoProbe::geoChina('GSE13507')
gset

检查表达式集

eSet=gset[[1]] # 提取表达矩阵 
probes_expr <- exprs(eSet)
dim(probes_expr) 
probes_expr=log2(probes_expr+1) #表达矩阵行log2+1归一化处理 
# 提取表型数据信息 
phenoDat <- pData(eSet) 

得到的表达矩阵并不是symbol,因此需要芯片注释,也就是ID转换,平台注释是在线加载的,但也仅需数秒即可完成


# 对表达芯片的探针进行基因注释

 (gpl=eSet@annotation) 
checkGPL(gpl) 
printGPLInfo(gpl)
 probe2gene=idmap(gpl) 
genes_expr <- filterEM(probes_expr,probe2gene )

以为到这就结束了吗?并不是,还可以继续

limma的经典2组差异分析走一下

## define the group
group_list=factor(c(rep('Normal',68),rep('Cancer',188))) #自己定义分组和数量
##按title自定义,如包含‘bladder’定义为‘cancer’
library(stringr)
group_list=ifelse(str_detect(phenoDat$title,"bladder"),"cancer","normal")
#设置参考水平,对照在前,处理在后
group_list = factor(group_list,
                    levels = c("normal","cancer"))

table(group_list)
library(limma)
design=model.matrix(~factor(group_list))
design
fit=lmFit(genes_expr,design)
fit=eBayes(fit)
DEG=topTable(fit,coef=2,n=Inf)
head(DEG)

对差异分析结果进行一些检验

need_deg=data.frame(symbols=rownames(DEG), logFC=DEG$logFC, p=DEG$P.Value)

火山图走一下,由于没有明显差异,因此没有上下调

deg_volcano(need_deg,1) #第一种图
deg_volcano(need_deg,1,logFC_thred = 0) #设置logFC范围
deg_volcano(need_deg,2) # 第二种图

热图走一下

deg_heatmap(DEG,genes_expr,group_list)
deg_heatmap(DEG,genes_expr,group_list,5) #显示前5对,数字可以自己定义

boxplot也来一下,一看就是基于ggpurb,当然可以自己后续DIY,加显著性标记

check_diff_genes('RAC3',genes_expr,group_list)
check_diff_genes('RAC3',genes_expr,group_list)+stat_compare_means(method = "t.test") #加个P值,手到擒来

有了差异基因和logFC值,结合前面Y叔的神包,GO和KEGG富集分析速速的

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

GEO2R数据下载速度慢、基因注释、差异分析、火山图、热图及后续处理 的相关文章

  • 论文R语言复现

    高斯混合概率在众多领域都有重要应用 依据已知观测数据估计高斯模型中未知参数就显得尤为重要 由于观测值具体来自于高斯分布的哪个分模型是未知的 那么利用传统的极大似然 MLE 方法进行参数估计就变得十分困难 引入 EM 算法 该方法通过构造分布
  • 看书标记【R语言数据分析与挖掘实战】4

    第四章 数据预处理 4 1 数据清洗 缺失值处理 使用is na 判断缺失值是否存在 complete cases 可以识别样本数据是否完整从而判断缺失情况 删除法 na omit 函数移除所有含有缺失数据的行 data p 删除p列 替换
  • R语言的Rattle可视化BI数据挖掘分析工具

    Rattle介绍 Rattle是一个免费的开源数据挖掘工具包 使用 Gnome 图形界面以统计语言 R编写 它在GNU Linux Macintosh OS X和MS Windows下运行 Rattle正在澳大利亚和国际上用于商业 政府 研
  • R语言 Scale函数

    在我们做数据的时候 一个数据会有很多特征 比如在描述影响房价的因素 有房子面积 房间数量等 而不同的特征存在不同的量纲 为了消除量纲 数值差异等 我们就需要对数据进行中心化和标准化 那什么是中心化 什么是标准化呢 所谓中心化就是将数据减去均
  • R语言作图:坐标轴设置

    R语言作图 坐标轴设置 偷闲阁 2018 02 04 20 51 24 209654 收藏 359 分类专栏 R语言 可视化 文章标签 R 坐标轴 刻度 可视化 版权声明 本文为博主原创文章 遵循 C
  • R语言与机器学习中的回归方法学习笔记

    来源 http blog sina com cn s blog 62b37bfe0101hom5 html key word lars rpart randomForest cp svm data diabetes prune boosti
  • 如何用R分析CNKI文献关键词词频?

    疑惑 如何用VOSviewer分析CNKI数据 一文发布后 有同学问我 王老师 我有个问题 我用cnki导出关键词后 想统计关键词的词频 我应该用什么样的工具 如果不利用citespace和python 做出excel那种的统计表格 该怎么
  • 生信技能树R语言学习

    一 数据类型和向量 1 数据类型 1 1 判断数据类型class 1 2 按Tab键自动补全 1 3 数据类型的判断和转换 1 is 族函数 判断 返回值为TRUE或FALSE is numeric 123 is character a i
  • 数据挖掘实验(四):决策树归纳 R语言

    一 实验目的 决策树分类算法 decision tree 通过树状结构对具有某特征属性的样本进行分类 其典型算法包括ID3算法 C4 5算法 C5 0算法 CART算法等 本次实验掌握用ID3的信息增益来实现决策树归纳 二 实验软件 Rst
  • 使用R语言中的survival包进行生存分析是一种常见的统计方法

    使用R语言中的survival包进行生存分析是一种常见的统计方法 在生存分析中 我们经常需要创建一个生存对象来存储事件发生时间和事件状态 在本文中 我们将介绍如何使用survival包中的Surv函数来创建生存对象 并解读其结果 Surv函
  • 人工智能顶会顶刊以及SCI,IF,核心,分区

    人工智能顶会顶刊以及SCI IF 核心 分区 标签 常识 刚上研究生的时候 老师总会让大家看论文 并且还要求要看好文章 要看顶会或者顶刊上面的文章 但是刚开始就不知道什么是顶会或者顶刊 所以这里整理了一下在人工智能方面的顶刊或者顶会 比如c
  • 使用R语言进行数据对象获取的mget函数实战

    使用R语言进行数据对象获取的mget函数实战 在R语言中 我们经常需要获取由多个数据对象组成的列表 为了高效地获取这些对象 R提供了一个非常方便的函数 即mget函数 mget函数可以根据给定的对象名称 在当前环境中查找并返回相应的数据对象
  • 转载:R语言绘图—图形标题、坐标轴设置

    R语言绘图是通过函数命令及相应参数设置实现的 如plot x y plot为绘图函数命令 x y则是绘图参数 指定了绘图的数据向量 但这种最基本的绘图设置很难满足个性化绘图的要求 我们需要根据需要对图形元素进行设置 图形元素是各类图形的基本
  • R语言【数据集的导入导出】

    目录 一 从键盘输入数据 二 函数方法读取 1 读取数据文件 2 从屏幕读取数据 1 scan 2 readline 3 读取固定宽度数据文件 三 读取csv文件 四 读取表格数据文件 五 从网络中读取表格或者CSV数据文件 一 从键盘输入
  • R语言中用于计算Rsquare的包rsq

    文章目录 理论介绍 线性模型情形 广义线性模型情形 函数介绍 rsq 的介绍 实例 rsq partial 的介绍 相关文献 pcor 函数介绍 vresidual 函数介绍 实例 理论介绍 线性模型情形 R squared 值范围 0 1
  • 统计学三大分布(卡方、t、F)即相应概率密度图的R语言实现

    三大统计分布 1 2 chi 2 2分布 设随机变量 X 1
  • R语言聚类分析

    本文首发于公众号 医学和生信笔记 完美观看体验请至公众号查看本文 文章目录 系统聚类 层次聚类 Hierarchical clustering 快速聚类 划分聚类 partitioning clustering K means聚类 围绕中心
  • 主成分分析R语言实现

    主成分分析是一种常见的降维统计方法 它通过适当的变量替换 使得新变量成为原变量的线性组合 并且新变量间彼此独立 从而可从错综复杂的关系中寻求主要成分信息 揭示变量内在关系 本次主要分享的是该方法的R语言实现 目录 数据集展示 一 计算相关系
  • R语言中tidyverse基础知识汇总

    tidyverse group by 分组统计 gather 和spread 简单地说 gather 是列转行 而spread 是行转列 请看下面的示例 gt df id class grade 1 1 a 81 2 2 b 82 3 3
  • R语言采集获取58商铺出租转让信息

    前两篇文章给我一个朋友分析出店铺商品以及地址房源信息 后来去看了下店铺房租有点贵 还是毛坯房 要自己装修 本着节约成本的原则 熬了个通宵 给他采集了一些转租商铺数据 因为数据比较多 过于先进不方便展示 我就将我爬虫程序的模版展示给大家观看

随机推荐

  • Spring Boot中优雅的判断请求来源设备并跳转对应的页面-Site preference

    在Spring Boot中优雅的判断请求来源设备并跳转对应的页面 Device detection这篇文章中已经对Spring Mobile有过简单的介绍 这里介绍的是Spring Mobile的另一种类似的方法 Site preferen
  • 结合ChatGPT制作PPT

    今天看到圈友的一个AI分享 然后自己本身需要做一个分享的PPT 刚好那着帖子实战一下 先说下整体感受 优点 制作成本确实会比较低 很熟练的话大概就是1分钟一个都有可能 整体流程是先找个第三方PPT制作网站 看下支不支持文本转PPT功能 有这
  • ASP.NET导出Excel文件

    将页面显示的订单表导出Excel文件 步骤 定义导出Excel文件的方法 private void Export string FileType string FileName Response Charset GB2312 Respons
  • Mysql_常用函数

    Mysql 常用函数 Mysql 常用字符串函数 函数 功能 concat s1 s2 sn 连接s1 s2 sn为一个字符串 insert str x y instr 将字符串str从第x位置开始 y个字符长的字串替换为字符串instr
  • 分布式发展过程

    目录 1 分布式的演变过程 1 分布式的演变过程 框架的演变过程 友情链接 分布式的演变过程 友情链接 2 分布式架构的演进 初始阶段架构 初始阶段 的小型系统 应用程序 数据库 文件等所有的资源都在一台服务器上通俗称为LAMP 特征 应用
  • opencv基础-环境配置&官方文档&源码编译

    opencv环境配置 官方文档 源码编译 前言 一 官方下载网址 二 官方文档地址 三 安装教程 1 包下载 2 环境配置 1 为什么要配置环境 2 环境变量 3 系统环境 四 配置vs工程环境 vs2019 opencv4 6 0 1 v
  • Kubernetes学习笔记之Deployment篇(六)

    Deployment概念 Kubernetes Deployment是Kubernetes中的一个控制器对象 用于管理应用程序的部署 它管理和自动更新应用程序的ReplicaSets 并确保应用程序在任何时候都有一定数量的可用实例 Depl
  • IP3 三阶交调截取点测试(转帖)

    放大器 混频器和振荡器的通用规范 本文介绍并定义了在混频器 放大器和振荡器的数据资料中用到的RF术语 包括增益 变频增益 相位噪声 三阶截取点 P1dB 插入损耗 输出功率 调谐增益和调谐范围 另外还给出了图形和图像以阐明关键的概念 这些在
  • Grouped Query Attention论文阅读

    论文 GQA Training Generalized Multi Query Transformer Models from Multi Head Checkpoints 1 背景介绍 Google在2023年发表的一篇关于Transfo
  • MATLAB求解矩阵特征值的六种方法

    MATLAB求解矩阵特征值的六种方法 关于这个特征值的求解一共六种方法 幂法 反幂法 QR方法 对称QR方法 jacobi方法 二分法 接下来就着重讲解这些算法的是如何使用的 幂法 算法如下 输入 矩阵A 非零矢量x0 maxit 2000
  • openGL之API学习(二十七)glEnable

    开启服务器端的opengl功能 void glEnable GLenum cap GL BLEND If enabled blend the computed fragment color values with the values in
  • LeetCode416-分割等和子集(经典01背包问题—动态规划)

    目录 思路 什么是01背包问题 01背包问题空间复杂度优化 滚动数组 本题代码 本题空间复杂度优化 滚动数组 给你一个 只包含正整数 的 非空 数组 nums 请你判断是否可以将这个数组分割成两个子集 使得两个子集的元素和相等 示例 1 输
  • RPC 设计与实现

    RPC 设计与实现 互联网架构演变 微观 单一架构 以实现功能为目的 扩展性差 数据访问层问题 垂直架构 业务拆分 各司其职 控制层 M V解耦 分布式服务 服务间的相互调度 RPCremote process call 流动式计算 伸缩性
  • 如何判断用户有没有关注订阅号

    收集整理的方法如下 微信用户访问微信公众号 订阅号 的网页时判断用户有没有关注公众号 订阅号 1 前提 微信公众号分为服务号和订阅号 它们的接口权限各不相同 服务号可以通过网页授权接口 用户授权后获取用户的openid 通过用户的openi
  • 如何解决过拟合与欠拟合

    如何解决过拟合与欠拟合 根据不同的坐标方式 欠拟合与过拟合图解不同 1 横轴为训练样本数量 纵轴为误差 如上图所示 我们可以直观看出欠拟合和过拟合的区别 模型欠拟合 在训练集以及测试集上同时具有较高的误差 此时模型的偏差较大 模型过拟合 在
  • GLSL 数据精度

    1 默认精度 顶点着色器中默认精度 precision highp float precision highp int precision lowp sampler2D precision lowp samplerCube 像素着色器中默认
  • 【待完善另一种情况】tensorflow 使用CPU而不使用GPU的问题解决

    文章目录 1 问题 2 Solution 3 other 4 更新 5 参考 1 问题 今天运行代码时发现一个怪现象 在使用TensorFlow时 通过os environ CUDA VISIBLE DEVICES 0 指定使用GPU 0
  • TLB的作用与机制

    TLB Translation Lookaside Buffer 转换检测缓冲区 是用来帮助CPU中的MMU进行地址转换的 在可分页系统中 每个进程都有自己虚拟地址空间和虚拟页面 当CPU执行进程代码读到虚拟地址时 不是直接将该虚拟地址送到
  • 泰勒图(Taylor diagram)绘制方法大汇总

    泰勒图 Taylor diagram 的基本介绍 R 绘制泰勒图 Taylor diagram Python 绘制泰勒图 Taylor diagram 泰勒图 Taylor diagram 的基本介绍 泰勒图 Taylor diagram
  • GEO2R数据下载速度慢、基因注释、差异分析、火山图、热图及后续处理

    GEO2R数据分析 首先感谢生信技能树大神jmzeng1314提供的github包 由于我这边访问github比较困难 因此我已经导入到我的 gitee 托管平台 https gitee com swcyo 特别声明 正版托管地址是http