专栏首页R语言交流中心R语言获取ArrayExpress数据库数据

R语言获取ArrayExpress数据库数据

大家可能有一部分人对ArrayExpress数据库是比较熟悉的,当然也有人可能没怎么听说过。今天我么主要介绍一个可以获取ArrayExpress数据库数据的R包的安装以及使用。

首先我们看下Array Express (https://www.ebi.ac.uk/arrayexpress/)的网站页面:

接下来我们介绍下ArrayExpress包的安装:

既然是组学数据的R包一般都会是以Linux为主当然也会开发windows版本。首先我们看下Linux版本的安装,其实比较简单只要调用bioconductor中提供的命令就可以:

source("https://bioconductor.org/biocLite.R")

biocLite("ArrayExpress")

关键是windows下的安装有点复杂。如果电脑安装了Rtool那么也可以直接调用以上的命令进行安装;反之,我们也可以下载包到本地进行安装,下载地址:http://www.bioconductor.org/packages/release/bioc/bin/windows/contrib/3.5/ArrayExpress_1.40.0.zip

然后就是直接本地启动就可以了。

以上不管是在Linux还是在windows下安装完成后,都需要去测试另一个系统工具的运行状态,那就是curl工具,当然Linux一般都会安装好,只需要更新下就好,如果没安装好那需要安装。不管是windows还是Linux版本都在以下链接中:https://curl.haxx.se/download.html

Linux下的安装过程:

wget https://curl.haxx.se/download/curl-7.55.1.tar.gz
tar -xzvf  curl-7.55.1.tar.gz
cd curl-7.55.1
./configure
make
makeinstall

便可以安装成功,检测命令 curl –version。

Windows下的安装过程:

下载对应的Windows下的版本,一般包含两个文件:

证书是需要安装的,.exe的文件需要拷贝到指定的文件夹即可。然后为curl配置环境变量,环境变量的配置我就不赘述了。

安装成功与否的测试和linux下一样。

至此,我们ArrayExpress的前期工作准备完毕。

最后就是如何使用ArrayExpress包进行数据的获取以及数据的分析。

首先,我们看下其中几个主要的函数:

1. queryAE()获取数据集的ID及相关描述信息

例: sets = queryAE(keywords = "kidney", species ="homo+sapiens")以下是成功结果以及获取的结果的结构。

2. getAE()获取指定ID下的所有数据并下载到本地

例:mexp1422=getAE("E-MEXP-1422")

3. ae2biocae()将下载到本地数据转化为R语言可以识别的AffyBatch数据形式。

例:rawset= ae2bioc(mageFiles = mexp1422)

4. ArrayExpress( )对数据进行整合形成数据object,如果进一步进行表达的分析可以借助affy包,affy包的使用我们将在后面的教程中介绍使用。

例:AEset = ArrayExpress("E-MEXP-1416")

本文分享自微信公众号 - R语言交流中心(R_statistics),作者:一粒沙

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-05-17

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • R语言实现动画效果

    1.transition_states(states, transition_length = 1, state_length = 1,wrap = TRUE)...

    一粒沙
  • R语言实现测序原始数据的文件转化

    了解测序的同志们应该都知道有很多格式的原始文件,同时在转化过程中很是麻烦。今天我们给大家介绍一个R包,它可以进行对原始数据的读取,同时并且可以导出时进行转化格式...

    一粒沙
  • R语言windows环境下R包的构建与.gz包的导入

    大家应该很熟悉windows下的R语言,并且也知道如何安装R包。但是呢,如果对于我们这种Linux小白很好奇那些只有在Linux下才能用的包怎么能让我们在win...

    一粒沙
  • redis命令keys和scan的区别

    redis的keys命令,通来在用来删除相关的key时使用,但这个命令有一个弊端,在redis拥有数百万及以上的keys的时候,会执行的比较慢,更为致命的是,这...

    我是攻城师
  • jquery 页面滚动事件 scroll()

    在没有任何元素的情况下,document的宽高是与window的宽高一致的,那么如果给document加入一些元素呢?

    Devops海洋的渔夫
  • 区块链的泡沫要破了吗?纵观市场未来走向!

    近来网上流传着下面这样一幅图,将比特币与历史上的经典泡沫走势进行对比,认为比特币泡沫已经破灭,价格将一去不再回头。同样,2017年年底突然兴起的区块链热也与来时...

    区块链领域
  • win10 uwp 如何拖动一个TextBlock的文字到另一个TextBlock

    我在堆栈网看到有人问 如何拖动一个TextBlock的文字到另一个TextBlock 于是看到一个大神给出的方法,下面我就来和大家说下如何拖动

    林德熙
  • IntelliJ IDEA 教程 项目篇本篇概要

    林万程
  • 打脸!联名抵制Nature机器智能子刊的教授成了首刊文章的一作

    在《Nature》宣布其子刊《Machine Intelligence》(NMI)将会收费后,诸多著名的机器学习研究者签了一份请愿书来抵制该子刊。然而,有人发现...

    机器之心
  • python数据库-MongoDB的基本使用(54)

    可以看到,我们刚创建的数据库 Hero并不在数据库的列表中, 要显示它,我们需要向Hero数据库插入一些数据。

    Se7eN_HOU

扫码关注云+社区

领取腾讯云代金券