当前位置: 首页 > 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;且对于多级界面的…...

mongodb源码分析session执行handleRequest命令find过程

mongo/transport/service_state_machine.cpp已经分析startSession创建ASIOSession过程&#xff0c;并且验证connection是否超过限制ASIOSession和connection是循环接受客户端命令&#xff0c;把数据流转换成Message&#xff0c;状态转变流程是&#xff1a;State::Created 》 St…...

为什么需要建设工程项目管理?工程项目管理有哪些亮点功能?

在建筑行业&#xff0c;项目管理的重要性不言而喻。随着工程规模的扩大、技术复杂度的提升&#xff0c;传统的管理模式已经难以满足现代工程的需求。过去&#xff0c;许多企业依赖手工记录、口头沟通和分散的信息管理&#xff0c;导致效率低下、成本失控、风险频发。例如&#…...

智能仓储的未来:自动化、AI与数据分析如何重塑物流中心

当仓库学会“思考”&#xff0c;物流的终极形态正在诞生 想象这样的场景&#xff1a; 凌晨3点&#xff0c;某物流中心灯火通明却空无一人。AGV机器人集群根据实时订单动态规划路径&#xff1b;AI视觉系统在0.1秒内扫描包裹信息&#xff1b;数字孪生平台正模拟次日峰值流量压力…...

如何在最短时间内提升打ctf(web)的水平?

刚刚刷完2遍 bugku 的 web 题&#xff0c;前来答题。 每个人对刷题理解是不同&#xff0c;有的人是看了writeup就等于刷了&#xff0c;有的人是收藏了writeup就等于刷了&#xff0c;有的人是跟着writeup做了一遍就等于刷了&#xff0c;还有的人是独立思考做了一遍就等于刷了。…...

10-Oracle 23 ai Vector Search 概述和参数

一、Oracle AI Vector Search 概述 企业和个人都在尝试各种AI&#xff0c;使用客户端或是内部自己搭建集成大模型的终端&#xff0c;加速与大型语言模型&#xff08;LLM&#xff09;的结合&#xff0c;同时使用检索增强生成&#xff08;Retrieval Augmented Generation &#…...

FFmpeg:Windows系统小白安装及其使用

一、安装 1.访问官网 Download FFmpeg 2.点击版本目录 3.选择版本点击安装 注意这里选择的是【release buids】&#xff0c;注意左上角标题 例如我安装在目录 F:\FFmpeg 4.解压 5.添加环境变量 把你解压后的bin目录&#xff08;即exe所在文件夹&#xff09;加入系统变量…...

基于PHP的连锁酒店管理系统

有需要请加文章底部Q哦 可远程调试 基于PHP的连锁酒店管理系统 一 介绍 连锁酒店管理系统基于原生PHP开发&#xff0c;数据库mysql&#xff0c;前端bootstrap。系统角色分为用户和管理员。 技术栈 phpmysqlbootstrapphpstudyvscode 二 功能 用户 1 注册/登录/注销 2 个人中…...

【Kafka】Kafka从入门到实战:构建高吞吐量分布式消息系统

Kafka从入门到实战:构建高吞吐量分布式消息系统 一、Kafka概述 Apache Kafka是一个分布式流处理平台,最初由LinkedIn开发,后成为Apache顶级项目。它被设计用于高吞吐量、低延迟的消息处理,能够处理来自多个生产者的海量数据,并将这些数据实时传递给消费者。 Kafka核心特…...

前端高频面试题2:浏览器/计算机网络

本专栏相关链接 前端高频面试题1&#xff1a;HTML/CSS 前端高频面试题2&#xff1a;浏览器/计算机网络 前端高频面试题3&#xff1a;JavaScript 1.什么是强缓存、协商缓存&#xff1f; 强缓存&#xff1a; 当浏览器请求资源时&#xff0c;首先检查本地缓存是否命中。如果命…...

渗透实战PortSwigger Labs指南:自定义标签XSS和SVG XSS利用

阻止除自定义标签之外的所有标签 先输入一些标签测试&#xff0c;说是全部标签都被禁了 除了自定义的 自定义<my-tag onmouseoveralert(xss)> <my-tag idx onfocusalert(document.cookie) tabindex1> onfocus 当元素获得焦点时&#xff08;如通过点击或键盘导航&…...