可重复性研究一直是学术发表希望实现的方式,更有助于判断研究结果的准确性和帮助后人以此为基础进行深入研究。计算分析类型的研究,是能够比较容易实现可重复性的 - 只要分享代码和数据就可以 (当然配置运行环境也需要一定的功底),如使用R markdown或Bookdown 或者 Jupyter notebook等,像宏基因组主编刘永鑫老师的植物根系菌群分析的NBT文章那样,把代码存放在Github上面也是一种比较好的方式。

CodeOcean是Nature推荐过的一个可重现性代码共享平台。其实质类似于一个云平台,可以直接在上面配置环境、开展项目分析,合作者之间协作并存放数据和代码,发表时提供给杂志社或读者,实现从原始数据到文章图表的整个可重复过程,并且可以进行衍生分析,或者上传自己的文件数据测试。而且有部分杂志要求作者发表时要把自己的代码和数据上传到CodeOcean上面。

我们以2019年9月份发表在Nature microbiology上的一篇文章Life cycle progression and sexual development of the apicomplexan parasite Cryptosporidium parvum为例,查看下其代码的可重用性使用方式。作者在CodeOcean上面提供了其从原始数据到基因定量、差异分析、火山图、热图、功能注释用到的BashR的代码,只需要在右侧点一下Reproducible Run按钮就可以重现分析。(Note: 从Rmarkdown中可以看到Bash相关代码默认没有执行,因为没有存放原始数据,可以自己从NCBI的SRA数据库下载,修改eval=T再继续分析)

具体可参考微信公众号上有录制的视频。

从视频中可以看到,CodeOccean不是一个简单的代码存放平台,是可以根据自己的需求配置环境、安装软件、R/Python包、存储数据和运行程序的平台,相当于一台共享的云服务器。所有的配置信息也都在对应的文件中有记录,如果我们想用于分析自己的数据,就在自己服务器配置对应的环境、下载代码和数据进行运行即可。

浏览过程中,发现一篇Microbiome上发表的人和狗肠道菌群的比较文章,作者提供了全部分析的Python代码,脚本很多,是学习宏基因组分析和Python的好文档。

还有2019年发表在eLife上的一篇单细胞分析的文章,Identifying Gene Expression Programs of Cell-type Identity and Cellular Activity with Single-Cell RNA-Seq,用Jupyter notebook的形式列出了各个分析部分的所有代码,还贴心的提供了目录。

更多文章和代码等着你去探索了。

https://codeocean.com/

这个Nature推荐的代码海洋竟然有文章作者上传的所有可重现性脚本,涉及单细胞、微生物组、转录组分析、机器学习等相关相关推荐

  1. Hadoop环境下用java代码实现hdfs远程文件的上传和下载

    Hadoop环境下用java代码实现hdfs远程文件的上传和下载 文章目录 Hadoop环境下用java代码实现hdfs远程文件的上传和下载 一.新建maven工程 二.文件的上传 三.文件的下载 四 ...

  2. Hadoop入门(10)_通过java代码实现从本地的文件上传到Hadoop的文件系统

    2019独角兽企业重金招聘Python工程师标准>>> 第一步:首先搭建java的编译环境.创建一个Java Project工程,名为upload. 第二步:选中所需的Jar包.   ...

  3. 一行代码实现Okhttp,Retrofit,Glide下载上传进度监听

    2019独角兽企业重金招聘Python工程师标准>>> 发表上篇文章 我一行代码都不写实现Toolbar!你却还在封装BaseActivity? 已是一个月前的事情~ 上篇文章的研究 ...

  4. SharePoint 2010 列表项代码绑定附件心得 (FileUpload上传附件)

    最近项目中用到在插入Item时绑定附件,可以上传多个附件,很快就写出来了,可是测试一侧老是有问题,经过多番折腾,终于算通过测试.SharePoint 2010上传附件需注意一下几点: 判断文件是否为空 ...

  5. IntelliJ IDEA绑定GitHub实现代码版本控制实例演示,IDEA上传、更新、同步项目到GitHub演示,Git的下载与安装

    IDEA 绑定 GitHub 实现代码版本控制 第一章:IDEA 配置 Git 并绑定 GitHub ① 下载 Git ① 安装 Git ③ 设置 Git 的用户名和用户邮箱 ④ IEDA 配置 Gi ...

  6. php图片传入及改名代码,WordPress添加媒体中文名图片上传改名(优化版)

    WordPress是国外程序,对中文命名的图片不友好,所以上传后就会出现错误.但是我们有时候保存在桌面或者其他地方的图片就是中文命名,现在要上传到WordPress多媒体中,或者上传到文章中,我们改怎 ...

  7. github如何上传代码到仓库(从本地上传代码到github)

    第一步:Git客户端安装好 第二步:github注册好账号 第三步:本地电脑随便建立一个文件夹,如:github,进入此文件夹,在地址栏中输入cmd 第四步:点击->,进入docs命令窗口,输入 ...

  8. 如何将GitHub上的项目或代码文件下载到本地,并且上传自己的代码

    怎么在github上面拉取分支,获取文件并上传更改过后的文件 得确保你的电脑上已经安装了 git bash ,它是一个适用于Microsoft Windows环境的应用程序,它为Git命令行体验提供了 ...

  9. 如何将写好的java代码制作成镜像,并上传到镜像仓库

    学习docker已经有三个月了,之前总是一股脑的学,没有静下心来做整理,现在终于有时间可以好好整理三个月的学习成果了,今天就整理一下如何将写好的代码制作成镜像并将镜像上传到代码仓库. 1.代码编写 本 ...

最新文章

  1. 18怎么确定板子形状_板绘怎么画线条排线?板绘小白画线不稳怎么办?
  2. vivo X21低调奢华 彭于晏携手黑金版来袭
  3. Struts2 datetimepicker 日期月份乱码解决
  4. 想要更快地使用AtomicLong? 等待它。
  5. JavaScript websocket 实例
  6. shell下正则表达式与其工具grep
  7. NeHe OpenGL第十九课:粒子系统
  8. antd中tooltip换行_ant design 中实现表格头部可删除和添加
  9. 圆周率 π 的研究、π 的等式
  10. spring boot组件_Spring Boot Framework的关键组件和内部
  11. 如何在Android模拟器中模拟GPS位置?
  12. spark python编程 林子雨_林子雨编著《Spark编程基础(Python版)》教材第5章的命令行和代码...
  13. python获取现在的日期和时间
  14. 大连考研英语培训百家外语考研英语一如何准备?
  15. Silverlight C# 游戏开发:草动系统(一)简单的草动
  16. php自我介绍50字,【自我介绍50字左右】自我介绍50字
  17. matplotlib之pyplot模块之饼图(pie():基础参数,返回值)
  18. x86 版的 Arduino Intel Galileo 开发板的体验、分析和应用
  19. “假离婚、真套现” 解禁潮将至 拉卡拉上演“一出好戏”
  20. thymeleaf双重循环_thymeleaf实现th:each双重多重嵌套功能

热门文章

  1. 【计算机组成原理】指令系统
  2. C++ 之编程语法习惯之 do{...}while(0) 的用处
  3. 使用深度学习框架 Tensorflow 实现线性回归 (Linear Model)
  4. 一个使用Logging Application Block的小问题[xgluxv]
  5. JavaScript错误处理和堆栈追踪浅析
  6. Android开发之Is Library篇
  7. Hadoop发行版的比较与选择
  8. unicode ascii
  9. win7无法打开设备和打印机
  10. 读书笔记:《时间投资法》之二