使用GEOquery下载GEO数据--转载
最近需要下载一大批GEO上的数据,问题是我要下载的Methylation数据根本就没有sra文件,换言之不能使用Aspera之类的数据进行下载。但是后来我发现了GEOquery这个不错的R包,不知道是网络问题还是怎么,GEOquery有时候运行也不太稳定,但是总体来说,很好地解决了我的问题。
首先假设我们想要下载的数据是GSE77445,这是一批DNA甲基化数据,我们可以在R语言中安装GEOquery之后,载入R包,然后直接输入:
Data <- getGEO("GSE77445",destdir="./")
- 1
我也没有太多研究,但是上述代码中,前一个参数就是你想要下载的GSE编号,后一个参数不能省略,是你指定的文件下载保存的路径。GEOquery其实也就是自动把文件下载下来,然后进行载入分析而已。
在命令输入之后,会自动开始下载一些Seriers数据(比如GSE77445_series_matrix.txt.gz),我也不知道为什么为什么它会自动下载这个文件。然后理论上程序会自动进行处理。整个过程非常漫长,估计要将近一个小时的样子,这还只是一个300M不到的小数据集。
然后如果顺利的话,你这一行命令可以顺利跑完,你会得到处理好的Data,但是这个数据还是一个S4结构体,并不是我们想要的矩阵研究形式。所以你可以用下面的代码获得相应的矩阵和样本数据:
myMatrix <- Data@GSE77445_series_matrix.txt.gz@assayData$exprs
myPDfile <- pData(phenoData(Data@GSE77445_series_matrix.txt.gz))
另外在一些时候,文件下载完以后,就会出现错误,但是在那种时候,文件其实已经被下载到了你指定的目录下了,如果是那样的话,你可以重新载入这个已经下载好的文件:
Data <- getGEO(filename="./GSE77445_series_matrix.txt.gz")
- 1
这一次就不需要加入目录参数,然后又需要过好久好久,程序一般就不会失败了,在处理完以后,用 下面两行代码获取矩阵数据和样本数据:
myMatrix <- Data@assayData$exprs
myPDfile <- pData(phenoData(Data))
- 1
- 2
经过我的测试,我用上述办法下载了十多套DNA甲基化数据,基本上还是很可靠的。但是有时候下载的series_matrix数据其实不能用,例如GSE77716这一套就不能用,这种就没有办法了,我唯一会的办法,就是从网站上去下载其他原格式数据,例如作者上传上去的Matrix或者Raw IDAT数据。
不过所谓不能用更多情况下是因为数据内不包含矩阵数据,一般来说都会包含有样本的数据,我下载的所有系列数据不一定都成功了,但是样本数据都有。如果你实在没有办法整理出起样本数据,这也不失为一个办法……
不得不吐槽一句,GEO我也是看的醉了……数据格式每一套都不一样,更要命的是有些数据下载下来都看不懂是什么鬼。有些提供了Raw IDAT文件的,又不提供Sample.csv文件,处理起来费时费力。
我是真的觉得学术界应该花点力气做一些整理规范工作……Biocondcutor就是这其中的翘楚案例。
另外我一直想下载一批较大的GEO数据:GSE87571,想要最原始的那一批6.1G大小的IDAT文件,但是一直都无法下载下来。有知道更好的办法的同学可以告诉我一下。
使用GEOquery下载GEO数据--转载的更多相关文章
- GEO数据下载分析(SRA、SRR、GEM、SRX、SAMN、SRS、SRP、PRJNA全面解析)
很多时候我们需要从GEO(https://www.ncbi.nlm.nih.gov/geo/)下载RNA-seq数据,一个典型的下载页面是https://www.ncbi.nlm.nih.gov/ge ...
- 解决Ubuntu“下载额外数据文件失败 ttf-mscorefonts-installer”的问题 (转载)
解决Ubuntu“下载额外数据文件失败 ttf-mscorefonts-installer”的问题 发表于 2017-09-15 | 更新于 2018-04-29 | 分类于 Linux | 评论数: ...
- 2. 在TCGA中找到并下载意向数据
听说过别人用生信分析"空手套白狼"的故事吧想做吗好想学哦~ 或多或少都知道GEO和TCGA这些公共数据库吧!那么你知道怎么在数据库上找到意向数据,并且成功下载呢?这第一步要难倒一大 ...
- ubuntu 下载额外数据不成功”的恼人提示通知
最近用Ubunt也遇到这个问题,搜到这个答案 参考原文链接: http://forum.ubuntu.org.cn/viewtopic.php?t=387865 2.移除“下载额外数据不成功”的恼人提 ...
- Android开发之从网络URL上下载JSON数据
网络下载拉取数据中,json数据是一种格式化的xml数据,非常轻量方便,效率高,体验好等优点,下面就android中如何从给定的url下载json数据给予解析: 主要使用http请求方法,并用到Htt ...
- 移除Ubuntu“下载额外数据不成功”的提示通知
参考自经过几天的摸索,终于得出安装flashplugin-installer的方法 移除"下载额外数据不成功"的恼人提示通知,方法: $cd /usr/share/package- ...
- java开发的web下载大数据时的异常处理
同事用java开发了一个系统,其中有一个功能是下载大约10万笔数据到Excel中.当上线后,很多用户反映下载数据量大的时候就不能成功,但有时可以,所以结论就是系统不稳定,这个问题拖了很久没有解决. 在 ...
- NCBI下载sra数据(新)
今天要上NCBI下载sra数据发现没有下载的链接,网上查发现都是老的方法,NCBI页面已经变更,于是看了NCBI的help,并且记录下来新版的sra数据下载方法,要用NCBI的工具SRA Tool ...
- ajax stream 一边下载二进制数据一边处理
最近有在做 stream 下载,并且边下载 stream 边处理功能.解析二进制的功能.最初参考了 flv.js 的 flv stream 下载处理功能,发现他并没有使用的 XMLHttpReques ...
随机推荐
- GCJ 2015R2(Bilingual-最小割)
Problem C. Bilingual Problem Elliot's parents speak French and English to him at home. He has heard ...
- 你知道军装照H5浏览了多少次吗? 10亿
7月29日,由人民日报客户端推出的<快看呐!这是我的军装照>(以下简称<军装照>)H5页面,由它所引发的全民晒“军装照”现象级事件,据统计,截至8月18日,<军装照> ...
- 008-Hadoop Hive sql语法详解3-DML 操作:元数据存储
一.概述 hive不支持用insert语句一条一条的进行插入操作,也不支持update操作.数据是以load的方式加载到建立好的表中.数据一旦导入就不可以修改. DML包括:INSERT插入.UPDA ...
- session和token的区别
session的使用方式是客户端cookie里存id,服务端session存用户数据,客户端访问服务端的时候,根据id找用户数据 而token一般翻译成令牌,一般是用于验证表明身份的数据或是别的口令数 ...
- SQL Server窗口框架——ROWS、RANGE
说到窗口框架就不得不提起开窗函数. 开窗函数支持分区.排序和框架三种元素,其语法格式如下: OVER ( [ <PARTITION BY clause> ] [ <ORDER BY ...
- 给idea配置默认的java jdk
1. 2. 3.选择安装的jdk的路径. 4.
- openJudge C17K:Lying Island
地址:http://poj.openjudge.cn/practice/C17K/ 题目: C17K:Lying Island 查看 提交 统计 提问 总时间限制: 2000ms 内存限制: 26 ...
- 杭电1019Least Common Multiple
地址:http://acm.hdu.edu.cn/showproblem.php?pid=1019 题目: Problem Description The least common multiple ...
- $PDB——Python调试利器详解
python 2.7 pdb官方文档:https://docs.python.org/2.7/library/pdb.html pdb是ptyhon内置的一个调试库,是调试python代码的好帮手,本 ...
- iOS 所有设备一览 && CoreFoundation源码
1. 所有设备一览 https://en.wikipedia.org/wiki/List_of_iOS_devices 2. CoreFoundation源码(可以看看runloop.runtime的 ...