文章目录

  • 学习来源
  • 1.Sequence Read Archive(SRA)
    • 1.1 Scroller提供两种方法来存取数据
  • 2. Query syntax
  • 3. Using the raw API without R/Bioconductor

学习来源

  • https://bioconductor.github.io/BiocWorkshops/public-data-resources-and-bioconductor.html#sequence-read-archive

1.Sequence Read Archive(SRA)

可以使用SRAdbV2获取SRA数据

  • 安装SRAdbV2包
install.packages('BiocManager')
BiocManager::install('seandavi/SRAdbV2')
  • 使用SRAdbV2 首先需要创建一个 R6类-Omicidx
oidx = Omicidx$new()
  • 创建好Omicidx实例后,就可以使用oidx$search()来进行数据检索
query=paste(paste0('sample_taxon_id:', 10116),'AND experiment_library_strategy:"rna seq"','AND experiment_library_source:transcriptomic','AND experiment_platform:illumina')
z = oidx$search(q=query,entity='full',size=100L

其中,entity 参数是指可以通过API获得的SRA实体类型, size 参数指查询结果返回的记录数

  • 由于有时候返回的结果集数据量很会大,所以我们可以使用 Scroller 来对结果进行检索提炼
s = z$scroll()
s
s$count

s$count 可以让我们简单看一下返回数据的条数有多少

1.1 Scroller提供两种方法来存取数据

  • 第一种方法,是把所有的查询结果都加载到R的内存中,但是这会很慢
res = s$collate(limit = 1000)
head(res)

然后使用 reset() 重新设置Scroller

s$reset()
s
  • 第二种方法是,使用 yield 方法来迭代取数据
j = 0
## fetch only 500 records, but
## `yield` will return NULL
## after ALL records have been fetched
while(s$fetched < 500) {res = s$yield()# do something interesting with `res` here if you likej = j + 1message(sprintf('total of %d fetched records, loop iteration # %d', s$fetched, j))
}

如果没有获取到完整的数据集,Scroller对象的has_next()方法会报出 TRUE
使用 reset() 函数可以将光标移动到数据集的开头

2. Query syntax

见这里
https://bioconductor.github.io/BiocWorkshops/public-data-resources-and-bioconductor.html#query-syntax

3. Using the raw API without R/Bioconductor

可以不通过R/Bioconductor,而是用原生API获取数据
SRAdbV2封装了web的API,因此可以通过web API访问其中数据

sra_browse_API()

基于web的API为实验数据查询提供了一个有用的接口,基于json的可以用

sra_get_swagger_json_url()

【生信进阶练习1000days】day15-SRAdbV2包相关推荐

  1. 生信识图之 点图进阶-3(MA)

    各位亲爱的土豪富婆,承蒙您慧眼识珠大驾光临大Y老师为您准备的小灶课堂. -----以下是日常碎碎念,日理万机的您,可以直接跳到图图图图分割线享用----- 对于"诈尸式"更新,大Y ...

  2. 生信分析之R语言常用R包一步下载

    系列文章目录 生信分析第一步:R语言基础应用以及数据前处理 文章目录 R包下载 使用GEOquery包下载原始数据 芯片数据读取 GEOquery 下载并读取数据 提取GEO表达矩阵 提取GEO注释信 ...

  3. 生信识图之 点图进阶-6(UMAP)

    各位亲爱的土豪富婆,见字如面. -----以下是日常碎碎念,日理万机的您,可以直接跳到图图图图分割线享用----- 春天来啦,又到了--考研计划的时候.大Y老师不是会把咱们公众号的更新陆续同步到知乎上 ...

  4. 生信识图之 点图进阶-4 (PCA下篇)

    各位亲爱的土豪富婆,承蒙您慧眼识珠大驾光临大Y老师为您准备的小灶课堂. 近期有朋友说发现有人抄袭咱们的文章,自标为"原创".对此大Y老师有心理准备,咱们的每一篇文章都是大Y老师仔细 ...

  5. CancerSubtypes包的介绍(根据生信技能树Jimmy老师分享的乳腺癌分子分型包资料整理)

    CancerSubtypes包的介绍(根据生信技能树Jimmy老师分享的乳腺癌分子分型包资料整理,感谢Jimmy老师!) 1. 引言 2. 数据处理 2.1 基本处理 2.1.1 通过检查数据分布来分 ...

  6. ProTICS包的介绍(根据生信技能树Jimmy老师分享的乳腺癌分子分型包资料整理)

    ProTICS包的介绍(根据生信技能树Jimmy老师分享的乳腺癌分子分型包资料整理,感谢Jimmy老师!) 1.设置环境 2.Part1的结果 3.Part2的结果 4.Part3的结果 5.相关函数 ...

  7. 生信识图 之 点图进阶-1

    各位亲爱的土豪富婆,承蒙您慧眼识珠大驾光临大Y老师为您准备的小灶课堂. -----以下是日常碎碎念,日理万机的您,可以直接跳到图图图图分割线享用----- 大Y老师做生信分析十多年了,在此期间结识很多 ...

  8. 生信软件5 - RIdeogram包绘制染色体密度图

    该R包在全基因组测序WGS中可以通过用于描述突变位点在染色体上的分布,在转录组测序RNA-Seq中可用于描述差异表达基因在染色体上的分布,在WGBS中可用于描述DNA甲基化在染色体上的分布等. R包软 ...

  9. 生信和植物领域最新资讯合集

    宏基因组/微生物组是当今世界科研最热门的研究领域之一,中科院科研人员创立"宏基因组"公众号,入选科研圈评选"2019年度学术媒体优质公众号联合海内外同行共同打造本领域纯干 ...

  10. camunda流程定义表无数据_[Python04] 学习snakemake,三步轻松搭建生信流程!

    随着学习的不断深入,分析的数据越来越多.你会发现,日常生信分析不过是调用一些相同的函数或者包分析不同的数据,换汤不换药. 那么,如何把分析过程流程化,让数据像工厂的流水线一样自动被处理? 最简单的法子 ...

最新文章

  1. VIM打开shell脚本中文乱码解决
  2. softmax函数理解
  3. 数据导出到Excel
  4. 《走出软件作坊》读后感
  5. js 异步执行_JS异步执行机制——事件循环(Event Loop)
  6. ZOJ 3817Chinese Knot(The 2014 ACM-ICPC Asia Mudanjiang Regional First Round)
  7. mysql5.7.76安装,win7下mysql5.7.17安装配置方法图文教程
  8. stl变易算法(三)
  9. JQuery学习笔记 [Ajax] (6-1)
  10. RabbitMQ ACK 机制的意义是什么?
  11. server2008r2经常蓝屏或者自动重启
  12. 利用CodeBlocks创建C语言项目
  13. 被遗忘的艺术——图思维方式
  14. “(CRON) info (No MTA installed, discarding output)”
  15. RPGmaker MV EnemyBook 插件使用
  16. Ubuntu安装之,硬盘分区
  17. OSChina 周三乱弹 —— 生活终于对我这只小猫咪动手啦
  18. Spark first, last函数的坑
  19. gif一键抠图 在线_强力推荐!免费在线的一键抠图神器:AIpix
  20. 友邦千盛春雨计划:为每个孤寡老人点亮心中微心愿

热门文章

  1. MySQL中的LIMIT 关键字
  2. 看看这段代码有没有内存泄露?
  3. 一个素数,如果将其反转后仍然是一个素数,我们称这样的素数为反转素数。 例如13是一个素数,反转之后得到的31也是一个素数,那么13和31都是反转素数。
  4. 下两个网段转发的路由设置_一台路由器下如何实现多个网络互通
  5. 损失函数的意义和作用_BN究竟起了什么作用?一个闭门造车的分析
  6. NYOJ 588 Money
  7. 【CF1342D】Multiple Testcases(贪心+优先队列)
  8. 【Linux】Mac在VMware中安装ubuntu教程和安装时遇到键盘鼠标失效等问题的解决方案
  9. 信用评分卡 (part 3of 7)
  10. 容器技术Docker K8s 48 服务网格(ASM)-阿里云服务网格使用