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

GEO生信数据挖掘(一)数据集下载和初步观察

检索到目标数据集后,开始数据挖掘,本文以阿尔兹海默症数据集GSE1297为例

目录

GEOquery  简介

安装并加载GEOquery包

getGEO函数获取数据(联网下载)

更换下载数据源

对数据集进行初步观察处理


GEOquery  简介

GEOquery是一个在生物信息学中常用的R语言包,用于从NCBI Gene Expression Omnibus(GEO)数据库中获取和分析基因表达数据。以下是GEOquery包的简介:

1. 数据获取:GEOquery包提供了方便的函数来从GEO数据库中获取基因表达数据。您可以使用`getGEO()`函数来下载和导入GEO数据集,包括微阵列和高通量测序数据。

2. 数据处理:GEOquery包提供了一系列函数来处理GEO数据集。您可以使用`pData()`函数获取样本的基本信息,使用`exprs()`函数获取基因表达矩阵,使用`featureNames()`函数获取基因名字等。

3. 数据质量控制:GEOquery包提供了一些函数来进行数据质量控制。您可以使用`boxplot()`和`plotDensities()`函数来检查数据的分布情况,使用`arrayQualityMetrics()`函数来评估数据的质量。

4. 数据分析:GEOquery包结合了其他常用的R语言包,如limma、edgeR等,提供了丰富的数据分析方法。您可以使用这些方法进行差异表达分析、聚类分析、富集分析等。


安装并加载GEOquery包


# 安装并加载GEOquery包if (!requireNamespace("GEOquery", quietly = TRUE))install.packages("GEOquery")
#BiocManager: : install("GEOquery")library(Biobase)
library(GEOquery)

GEOquery如果安装失败可以尝试

BiocManager: : install("GEOquery")

getGEO函数获取数据(联网下载)

`getGEO`函数有一些可选参数,可以用来自定义数据获取和处理过程。以下是一些常用的参数介绍:

1. `GEO`:指定要获取的GEO数据集的ID。可以是一个字符向量,包含多个ID,用于同时获取多个数据集。

2. `destdir`:指定下载数据的目标文件夹。默认情况下,数据会下载到当前工作目录下的"geoquery"文件夹中。

3. `getGPL`:逻辑值,表示是否同时获取与GEO数据集关联的平台信息。默认为FALSE,不获取平台信息。

4. `AnnotGPL`:逻辑值,表示是否获取平台的注释信息。默认为FALSE,不获取注释信息。

5. `GSEMatrix`:逻辑值,表示是否将基因表达数据存储为GSEMatrix对象。默认为TRUE,将数据存储为GSEMatrix对象。

6. `getGPLcdf`:逻辑值,表示是否获取与GEO数据集关联的平台注释文件。默认为FALSE,不获取注释文件。

7. `verbose`:逻辑值,表示是否显示下载和导入过程的详细信息。默认为TRUE,显示详细信息。


# 指定GEO数据集的ID
gse_id <- "GSE1297"# 使用getGEO函数获取数据
gse_data <- getGEO(gse_id,destdir = ".", AnnotGPL = FALSE)

更换下载数据源

数据集大时,国内网络经常会出现中断,需要更换下载源

chooseCRANmirror() #选择镜像源

输入数字选择国内镜像源

在中国选择合适的CRAN镜像源可以提高下载速度和稳定性。以下是几个常用的CRAN镜像源:

1. 中国科学技术大学镜像源:https://mirrors.ustc.edu.cn/CRAN/

2. 清华大学镜像源:https://mirrors.tuna.tsinghua.edu.cn/CRAN/

3. 阿里云镜像源:https://mirrors.aliyun.com/CRAN/

您可以尝试使用其中一个镜像源。一般来说,中国科学技术大学镜像源和清华大学镜像源在中国使用较为广泛且速度较快。如果您发现某个镜像源下载速度较慢,可以尝试切换到其他镜像源进行下载。

对数据集进行初步观察处理

#查看对象结构信息
View(gse_data) 
str(gse_data )# 提取所需的基础信息title <- gse_data$GSE1297_series_matrix.txt.gz$title
age  <- gse_data$GSE1297_series_matrix.txt.gz$`age:ch1`
Sex <-  gse_data$GSE1297_series_matrix.txt.gz$`Sex:ch1`# 打印基础信息
cat("标题:", title, "\n")
cat("年龄:", age, "\n")
cat("性别:", Sex, "\n")# 查看数据的摘要信息
summary(gse_data)# 提取所需的数据
expression_data <- exprs(gse_data[[1]])

查看数据结构

根据需求提取基础信息

获取临床信息(后续工作分组需要)

提取基因表达数据

所有代码


if (!requireNamespace("GEOquery", quietly = TRUE))install.packages("GEOquery")
#BiocManager: : install("GEOquery")#library(Biobase)
library(GEOquery)# 指定GEO数据集的ID
gse_id <- "GSE1297"
#标题: Gene expression patterns in human cancer cell lines
#摘要: This dataset contains gene expression data from various human cancer cell lines. The data was generated using microarray technology.
#平台: GPL570
#样本数量: 60chooseCRANmirror() #选择镜像源
# 使用getGEO函数获取数据
gse_info <- getGEO(gse_id,destdir = ".", AnnotGPL = FALSE)#查看对象结构信息
str(gse_info )# 提取所需的基础信息title <- gse_info$GSE1297_series_matrix.txt.gz$title
age  <- gse_info$GSE1297_series_matrix.txt.gz$`age:ch1`
Sex <-  gse_info$GSE1297_series_matrix.txt.gz$`Sex:ch1`# 打印基础信息
cat("标题:", title, "\n")
cat("年龄:", age, "\n")
cat("性别:", Sex, "\n")# 查看数据的摘要信息
summary(gse_info)
summary(gse_info$GSE1297_series_matrix.txt.gz)# 提取所需的数据
expression_data <- exprs(gse_info[[1]])#+========================================================================================# 样本编号方法一
samples =gse_info$GSE1297_series_matrix.txt.gz$geo_accession 
# 样本编号方法二
samples=sampleNames(gse_info) # sample name就是看有多少GSM样本
# 样本编号方法三
samples=as.character(pdata[,2])#+========================================================================================#提取临床信息 方法一:$或者@ ,配合str()观察结构
pdata = gse_info$GSE1297_series_matrix.txt.gz@phenoData@data#提取临床信息 方法二:用函数提取 提取表达矩阵
phenoData= gse_info$GSE1297_series_matrix.txt.gz@phenoData 
pdata = pData(phenoData)#方法三:直接通过鼠标操作再粘贴 在表达矩阵前面的注释信息里面#+========================================================================================# 提取基因表达矩阵
expression_data <- exprs(gse_info[[1]])#+========================================================================================

基因表达数据已经提取到了,但是,矩阵的行名还是芯片探针的名称。

下节我们来看 如何将探针名称转换为基因名称。

相关文章:

GEO生信数据挖掘(一)数据集下载和初步观察

检索到目标数据集后&#xff0c;开始数据挖掘&#xff0c;本文以阿尔兹海默症数据集GSE1297为例 目录 GEOquery 简介 安装并加载GEOquery包 getGEO函数获取数据&#xff08;联网下载&#xff09; 更换下载数据源 对数据集进行初步观察处理 GEOquery 简介 GEOquery是一个…...

Tensorflow2 GPU 安装方法

一、Tensorflow2 GPU 安装方法 1. 首先安装Anaconda3环境2. 在Anaconda Prompt 中安装tensorflow23. 验证GPU是否可以使用 1. 首先安装Anaconda3环境 https://www.anaconda.com/ 2. 在Anaconda Prompt 中安装tensorflow2 conda update conda conda create -n tensorflow pyt…...

QSS之QLineEdit

QLineEdit我们在开发过程中是经常使用的&#xff0c;一般情况下默认的风格是不适合设计师的要求&#xff0c;本篇介绍QLineEdit的基本qss风格&#xff1a; 1.基本属性设置 QLineEdit{background-color:#FFFFFF;color:#333333;border:none;} 2.悬浮状态设置 QLineEdit:hover…...

在比特币上支持椭圆曲线 BLS12–381

通过使用智能合约实现来支持任何曲线 BLS12–381 是一种较新的配对友好型椭圆曲线。 与常用的 BN-256 曲线相比&#xff0c;BLS12-381 的安全性明显更高&#xff0c;并且安全目标是 128 位。 所有其他区块链&#xff0c;例如 Zcash 和以太坊&#xff0c;都必须通过硬分叉才能升…...

简单讲解 glm::mat4

文章目录 前言一、下载glm库二、基本数学知识1. 三维中的 4 x 4 矩阵2.旋转3. 位移4. 缩放5. 组合 三、行向量或列向量四、总结 前言 glm库是OpenGL的官方数学库&#xff0c;里面内置多种跟几何变换相关的函数&#xff0c;熟练掌握glm库可以省下很多麻烦。 因为最近在项目中主…...

第3章-指标体系与数据可视化-3.1.1-Matplotlib绘图库

目录 3.1 Python可视化 3.1.1 Matplotlib绘图库 1. 线图 2. 饼图 3. 条形图 4. 直方图 5.散点图...

探索视听新纪元: ChatGPT的最新语音和图像功能全解析

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f405;&#x1f43e;猫头虎建议程序员必备技术栈一览表&#x1f4d6;&#xff1a; &#x1f916; 人工智能 AI: &#x1f9e0; Machine …...

华为乾坤区县教育安全云服务解决方案(1)

华为乾坤区县教育安全云服务解决方案&#xff08;1&#xff09; 课程地址方案背景客户痛点分析区县教育网概述区县教育网业务概述区县教育网业务安全风险分析区县教育网安全运维现状分析区县教育网安全建设痛点分析 安全解决方案功能概述架构概述方案架构设备选型 课程地址 本…...

《Jetpack Compose从入门到实战》第三章 定制 UI 视图

目录 配置颜色、字体与形状Welcome PageLogin PageHome Page 主题CompositionLocal 配置颜色、字体与形状 -ui.theme.Color.kt val pink100 Color(0xFFFFF1F1) val pink900 Color(0xFF3F2C2C) val white Color(0xFFFFFFFF) val white850 Color(0xD9FFFFFF) val gray Col…...

Kubernetes组件和架构简介

目录 一.概念简介 1.含义&#xff1a; 2.主要功能&#xff1a; 3.相关概念&#xff1a; 二.组件和架构介绍 1.master&#xff1a;集群的控制平面&#xff0c;管理集群 2.node&#xff1a;集群的数据平面&#xff0c;为容器提供工作环境 3.kubernetes简单架构图解 一.概…...

ElementUI实现增删改功能以及表单验证

目录 前言 BookList.vue action.js 展示效果 前言 本篇还是在之前的基础上&#xff0c;继续完善功能。上一篇完成了数据表格的查询&#xff0c;这一篇完善增删改&#xff0c;以及表单验证。 BookList.vue <template><div class"books" style"pa…...

C++中有哪些运算符以及它们的优先级?

C中常用的运算符包括算术运算符、赋值运算符、关系运算符、逻辑运算符、位运算符等。这里列举一些常见的运算符以及它们的优先级&#xff08;从高到低&#xff09;&#xff1a; 圆括号&#xff08;&#xff09;一元正号、一元负号-数组下标[]成员选择符&#xff08;点号.、箭头…...

uboot启动流程-涉及_main汇编函数

一. uboot启动流程涉及函数 本文简单分析一下 save_boot_params_ret调用的函数&#xff1a;_main汇编函数。 本文继之前文章的学习&#xff0c;地址如下&#xff1a; uboot启动流程-涉及s_init汇编函数_凌肖战的博客-CSDN博客 二. uboot启动流程涉及的 _main汇编函数 经过之…...

此芯科技加入百度飞桨硬件生态共创计划,加速端侧AI生态布局

近日&#xff0c;此芯科技&#xff08;上海&#xff09;有限公司&#xff08;以下简称“此芯科技”&#xff09;与百度签署硬件生态共创计划合作协议&#xff0c;正式加入由百度发起的硬件生态共创计划。双方将共同推动端侧AI和大模型在个人计算、车载计算以及元宇宙计算等领域…...

Unity把UGUI再World模式下显示到相机最前方

Unity把UGUI再World模式下显示到相机最前方 通过脚本修改Shader 再VR里有时候要把3D的UI显示到相机最前方&#xff0c;加个UI相机会坏事&#xff0c;可以通过修改unity_GUIZTestMode来解决。 测试用例 测试用例如下&#xff1a; 场景包含一个红色的盒子&#xff0c;一个UI…...

nodejs+vue活鲜物流监控系统elementui

第3章 系统分析 5 3.1 需求分析 5 3.2 系统可行性分析 5 3.2.1技术可行性&#xff1a;技术背景 5 3.2.2经济可行性 6 3.2.3操作可行性&#xff1a; 6 3.3 项目设计目标与原则 6 3.4系统流程分析 7 3.4.1操作流程 7 3.4.2添加信息流程 8 3.4.3删除信息流程 9 第4章 系统设计 11 …...

数据集划分——train_test_split函数使用说明

当我们拿到数据集时&#xff0c;首先需要对数据集进行划分训练集和测试集&#xff0c;sklearn提供了相应的函数供我们使用 一、讲解 快速随机划分数据集&#xff0c;可自定义比例进行划分训练集和测试集 二、官网API 官网API sklearn.model_selection.train_test_split(*a…...

Pytorch中关于forward函数的理解与用法

目录 前言1. 问题所示2. 原理分析2.1 forward函数理解2.2 forward函数用法 前言 深入深度学习框架的代码&#xff0c;发现forward函数没有被显示调用 但代码确重写了forward函数&#xff0c;于是好奇是不是python的魔术方法作用 1. 问题所示 代码如下所示&#xff1a; cla…...

vite跨域proxy设置与开发、生产环境的接口配置,接口在生产环境下,还能使用proxy代理地址吗

文章目录 vite的proxy开发环境设置如果后端没有提供可以替换的/mis等可替换的后缀的处理办法接口如何区分.env.development开发和.env.production生产环境接口在生产环境下&#xff0c;还能使用proxy代理地址吗&#xff1f; vite的proxy开发环境设置 环境&#xff1a; vite 4…...

【嵌入式】使用MultiButton开源库驱动按键并控制多级界面切换

目录 一 背景说明 二 参考资料 三 MultiButton开源库移植 四 设计实现--驱动按键 五 设计实现--界面处理 一 背景说明 需要做一个通过不同按键控制多级界面切换以及界面动作的程序。 查阅相关资料&#xff0c;发现网上大多数的应用都比较繁琐&#xff0c;且对于多级界面的…...

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?

编辑&#xff1a;陈萍萍的公主一点人工一点智能 未来机器人的大脑&#xff1a;如何用神经网络模拟器实现更智能的决策&#xff1f;RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战&#xff0c;在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…...

高等数学(下)题型笔记(八)空间解析几何与向量代数

目录 0 前言 1 向量的点乘 1.1 基本公式 1.2 例题 2 向量的叉乘 2.1 基础知识 2.2 例题 3 空间平面方程 3.1 基础知识 3.2 例题 4 空间直线方程 4.1 基础知识 4.2 例题 5 旋转曲面及其方程 5.1 基础知识 5.2 例题 6 空间曲面的法线与切平面 6.1 基础知识 6.2…...

mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包

文章目录 现象&#xff1a;mysql已经安装&#xff0c;但是通过rpm -q 没有找mysql相关的已安装包遇到 rpm 命令找不到已经安装的 MySQL 包时&#xff0c;可能是因为以下几个原因&#xff1a;1.MySQL 不是通过 RPM 包安装的2.RPM 数据库损坏3.使用了不同的包名或路径4.使用其他包…...

【Oracle】分区表

个人主页&#xff1a;Guiat 归属专栏&#xff1a;Oracle 文章目录 1. 分区表基础概述1.1 分区表的概念与优势1.2 分区类型概览1.3 分区表的工作原理 2. 范围分区 (RANGE Partitioning)2.1 基础范围分区2.1.1 按日期范围分区2.1.2 按数值范围分区 2.2 间隔分区 (INTERVAL Partit…...

docker 部署发现spring.profiles.active 问题

报错&#xff1a; org.springframework.boot.context.config.InvalidConfigDataPropertyException: Property spring.profiles.active imported from location class path resource [application-test.yml] is invalid in a profile specific resource [origin: class path re…...

初探Service服务发现机制

1.Service简介 Service是将运行在一组Pod上的应用程序发布为网络服务的抽象方法。 主要功能&#xff1a;服务发现和负载均衡。 Service类型的包括ClusterIP类型、NodePort类型、LoadBalancer类型、ExternalName类型 2.Endpoints简介 Endpoints是一种Kubernetes资源&#xf…...

嵌入式常见 CPU 架构

架构类型架构厂商芯片厂商典型芯片特点与应用场景PICRISC (8/16 位)MicrochipMicrochipPIC16F877A、PIC18F4550简化指令集&#xff0c;单周期执行&#xff1b;低功耗、CIP 独立外设&#xff1b;用于家电、小电机控制、安防面板等嵌入式场景8051CISC (8 位)Intel&#xff08;原始…...

es6+和css3新增的特性有哪些

一&#xff1a;ECMAScript 新特性&#xff08;ES6&#xff09; ES6 (2015) - 革命性更新 1&#xff0c;记住的方法&#xff0c;从一个方法里面用到了哪些技术 1&#xff0c;let /const块级作用域声明2&#xff0c;**默认参数**&#xff1a;函数参数可以设置默认值。3&#x…...

算术操作符与类型转换:从基础到精通

目录 前言&#xff1a;从基础到实践——探索运算符与类型转换的奥秘 算术操作符超级详解 算术操作符&#xff1a;、-、*、/、% 赋值操作符&#xff1a;和复合赋值 单⽬操作符&#xff1a;、--、、- 前言&#xff1a;从基础到实践——探索运算符与类型转换的奥秘 在先前的文…...

篇章二 论坛系统——系统设计

目录 2.系统设计 2.1 技术选型 2.2 设计数据库结构 2.2.1 数据库实体 1. 数据库设计 1.1 数据库名: forum db 1.2 表的设计 1.3 编写SQL 2.系统设计 2.1 技术选型 2.2 设计数据库结构 2.2.1 数据库实体 通过需求分析获得概念类并结合业务实现过程中的技术需要&#x…...