内容

R版本: R版本4.1.0 (2021-05-18)

Bioconductor版本: 3.13

: 1.14.0

1简介

Bioconductor工作流小插图是培训和良好的科学实践资源,演示如何处理特定的多步骤生物信息分析,主要(但不一定完全)使用Bioconductor项目托管的软件(Huber et al., n.d.).它们通过关注如何组合多个工具来从头到尾进行分析,而不是突出单个资源的特性,扩展了在单个软件包中发现的小插图。然而,它们确实有许多相似之处,特别是希望以识字编程风格编写此类工作流,并在可执行代码周围使用解释性文本。这为读者和作者提供了好处,读者可以在上下文中看到工作流的每个步骤,而作者可以定期检查代码是否仍然有效,并做出更改,以反映他们所依赖的软件的更新或方法的改进。这些文档然后托管在Bioconductor网站,为读者提供一个集中的位置,以查找文章,并下载文章中详细列出的软件包。工作流作者也被鼓励将他们的工作作为文章提交给F1000ResearchBioconductor网关,这对作者和读者都有好处,提高了曝光度、同行评议和可引用的参考文献。这样做的目的是(本质上)在两个位置呈现相同的内容。

然而,这两个发布平台的需求是不同的。为了定期检查代码功能,并提供用户可以直接下载和运行的工作流程,Bioconductor需要提供用R Markdown编写的文档(Allaire et al. 2017)或Sweave(Leisch 2002),这与r的标准读写编程引擎兼容。另一方面,F1000Research请求以Microsoft Word格式提交,其中代码不能直接运行。双方还将自己的风格和品牌应用到最终文件中,以向最终用户呈现一致的投资组合。

考虑到这些不同的要求,对于作者来说,维护一个文档同时提交到两个平台有点困难。这通常会导致一个优先级高于另一个,然后是转换到另一个的重要工作。另外,作者还面临着同时编写两个文档的挑战,试图保持信息内容的同步,同时处理文档布局和格式的两种截然不同的语法。

在这里,我们提供了一种策略和配套工具,帮助作者开发和维护单个文档,可以轻松地将其转换为提交到任何平台所需的格式。

2方法

2.1实现

考虑到工作流文档的意图是充满可执行的示例,可以在必要时定期检查和更新,建议使用R中可用的读写编程格式之一,而不是使用静态排版工具,这似乎很自然。如前所述,这里通常使用两种格式:Sweave和R Markdown。这就立即给作者一个选择的机会,甚至在一个字还没有写出来的时候,就有了合理的理由来选择其中任何一个;R Markdown的语法更简单,可以很容易地转换成HTML在网站上显示,而Sweave对文档格式提供了更精确的控制,可以很容易地转换成适合期刊提交的格式。

为了简化这一点,我们选择只支持R Markdown作为输入格式,因为这可以直接提交给Bioconductor,转换成网站上显示的HTML格式由他们处理。这就留下了将R Markdown转换为适合期刊提交的格式的挑战。为了解决这个问题,我们开发了BiocWorkflowTools是一个R包,提供文章模板、转换工具,并能将文档上传到Overleaf.com (F1000Research首选的提交系统)。

2.2操作

为了使用BiocWorkflowTools用户必须有R系统上安装了3.4.0或更新版本。我们还建议在RStudio环境中工作,但这是可选的,所有操作都可以在命令行中执行,下面提供了两种方法的说明。

2.2.1安装

BiocWorkflowTools可以通过在R会话中运行以下命令从Bioconductor包存储库中获得。

如果(!"BiocManager" %in% rownames(installed.packages()) install.packages("BiocManager") BiocManager::install("BiocWorkflowTools")

2.2.2创建Bioconductor工作流包

考虑到背后的原因BiocWorkflowTools的为了尽可能轻松地满足两个出版平台的不同要求,我们推荐的策略假设大多数作者在开始一个项目时都打算将最终结果提交给Bioconductor和F1000Research。

对于f1000研究所需的材料清单是直接和熟悉的:文章本身,参考文献,图表和补充材料的列表。然后可以将这些文件作为文件集合发送。当涉及到生物导体时,所有相同的材料都是必需的;然而,他们的计算基础设施,使定期文件检查和易于分发,也要求提交以R包的形式。有许多资源讨论如何创建R包韦翰(2015)(如果潜在的作者不熟悉编写包,我们强烈建议他们阅读这些),但是为了简化这个过程,我们提供了这个函数createBiocWorkflow,它将创建提交给Bioconductor所需的最小文件夹结构。

workflow_location <- file.path(tempdir(), "MyWorkflow") createworkflowtools::createBiocWorkflow(path = workflow_location, open = FALSE)
##包:MyWorkflow ##标题:包做什么(一行,标题大小写)##版本:0.0.0.9000 ## Authors@R(解析):## * First Last  [aut, cre] (YOUR-ORCID-ID) ##描述:包做什么(一段)。##许可:' use_mit_license() ', ' use_gpl3_license() '或朋友选择一个##许可##编码:UTF-8 ## LazyData: true ## Roxygen: list(markdown = true) ## RoxygenNote: 7.1.1 ##工作流:true

运行上面的示例将创建一个名为MyWorkflow子目录小插曲包含一个名为MyWorkflow。限制型心肌病.在这个文件中,应该开始开发工作流文档。在初始状态下,模板提供了典型工作流文章的示例框架,以及如何包含特定文档特征的示例,如图表、表格、公式和代码块,与F1000Research网站上提供的更传统的Microsoft Word模板的方式大致相同。该模板还包括所需文档头的示例,其中指定了文章元数据,如标题、作者名称、它们的从属关系和摘要。

在上面的例子中,改变参数open = TRUE将在新创建的RStudio中打开一个新的RStudio项目MyWorkflow文件夹中。

2.2.3只编写一个工作流文档

如果你不想做一个完整的软件包,而是简单地使用R Markdown来撰写一篇F1000Research文章,对于大多数作者来说,推荐的平台仍然是在RStudio中工作。用户可以选择从文件菜单中创建一个新的R Markdown文档,而不是像以前那样创建一个新的包BiocWorkflowTools软件包安装完成后,将显示使用F1000Research Article模板的选项(图1)1).

新文章的创建集成到RStudio中。F1000Research模板可以通过“New R Markdown”文件菜单对话框访问

图1:新文章的创建集成到RStudio中
F1000Research模板可以通过“New R Markdown”文件菜单对话框访问

这将自动打开一个基于前面描述的F1000Research模板的新文档。

2.2.3.1在RStudio之外工作

即使您选择不在RStudio环境中工作,您仍然可以使用包含的模板来创建一个新文件。我们建议使用模板作为起点,以方便遵循所需的文章结构。下面的命令将创建一个名为MyArticle在当前工作目录中,这将包含模板MyArticle。限制型心肌病可以使用所选工具进行编辑。

rmd_file <- rmarkdown::draft("MyArticle。限制型心肌病", template = "f1000_article", package = "BiocWorkflowTools", edit = FALSE)

2.2.4转换为

如果您正在使用RStudio编辑您的工作流,创建文档版本的最简单方法是按下工作区中文档窗格上方的“Knit”按钮。这将处理文档并生成版本和编译后的PDF,这样您就可以看到最终打印版本的外观。这个过程还执行一些必要的清理工作,例如将所需的F1000Research样式文件和日志标识复制到与文档相同的位置,这样您可能会注意到出现了一些额外的文件。

如果您更喜欢在RStudio以外的编辑器中工作,仍然可以使用该函数将R Markdown文件转换为(以及前面提到的家政)渲染rmarkdown包中。这将执行与使用RStudio相同的转换过程,执行代码块并生成预期的和PDF输出文件。

rmarkdown:渲染(rmd_file)

2.2.5文章提交

理想情况下,工作流提交给Bioconductor和F1000Research。为Bioconductor贡献的说明可从//www.andersvercelli.com/2021欧洲杯体育投注开户developers/how-to/workflows

向F1000Research提交文章目前使用Overleaf.com,这是一个在线协作写作和出版工具。完整的细节可以在网上找到,但是假设一个人已经编写了R Markdown工作流并生成了源文件,他们可以选择使用他们的网络浏览器直接将文件上传到Overleaf。

BiocWorkflowTools提供功能uploadToOverleaf作为另一种选择,让文章进入背页系统。这个函数获取文档目录并将其发送到Overleaf,自动为您创建一个新项目。该函数将直接在web浏览器中打开新项目。

BiocWorkflowTools:: uploadToOverleaf(“MyArticle”)

在这一点上,重要的是要指出文章的R Markdown和R Markdown版本都出现在Overleaf项目中,其中第一个版本被呈现在网站上看到的文档预览中。在Overleaf环境中,只有对版本的更改才会反映在预览窗格中,而不是作者一直在使用的R Markdown。因此,如果使用浏览器界面进行编辑,两个文档很容易不同步。因此,我们建议在最终提交过程中只使用Overleaf,在这一点上避免使用它的文档编辑功能。Overleaf提供了许多吸引人的特性,例如作者之间的协作编辑(特别是那些可能不熟悉RStudio环境的作者)和实时呈现更改。然而,应该再次强调的是,尽管人们很想在Overleaf环境中编辑文档,但这会破坏背后的动机BiocWorkflowTools.因此,我们的建议是专门处理文章的R Markdown版本(使用作者喜欢的任何版本控制系统和协作工具),然后将Overleaf纯粹用作提交门户。

2.2.6款文章修改

假设文章被暂时接受,期刊编辑将创建第二个私有的Overleaf存储库,用于较小的副本编辑。编辑的评论和指示将包括在R Markdown文档中,包含在评论标签中。<!——编辑评论——>

在这个阶段,人们可以在web浏览器界面中编辑R Markdown文档,但是目前没有办法从这里重新生成包含更改的文档。相反,要在创建了一个Overleaf项目之后进行额外的更改,我们建议利用所有的Overleaf项目都可以被接口使用这一事实git.Overleaf提供了在本地机器上初始化它的说明, n.d. (Overleaf.com)。.由于这是一个私人项目,作者将需要提供他们的Overleaf用户名和密码来使用git。如果文稿已经在git版本控制下,则可以将Overleaf服务器添加为额外的远程存储库。然后作者可以脱机处理手稿,并使用常规的git命令来保持本地副本的同步,例如git拉获取最新版本。在提交对源Rmd文件所做的任何编辑之前,还记得重新生成输出文件。一旦他们准备好将更改推回Overleaf,他们将立即出现在网上。

cd MyArticle git pull #做一些修改并重新生成Latex文件git commit -a -m "My editing " git push

一旦作者发表了编辑的评论,就可以通过Overleaf重新提交。

3.总结

BiocWorkflowTools提供了一组简单的助手函数和一个可在RStudio中发现的文档模板,旨在简化编写源文档的过程,该源文档既可以作为可执行文档运行,也可以提交给期刊发表。我们专注于Bioconductor和F1000Research之间的合作,以及R Markdown工作流程的编写。通过支持R Markdown并将文档模板与RStudio集成在一起,我们希望能够让作者更容易地满足这两种发布格式的需求。目前仍然需要提交两个不同的文件(R Markdown文件,以及由此派生的文件),但存在移动使用的潜力BiocWorkflowTools从作者到期刊,这样就消除了向两个地点提交单一来源的最后障碍。

虽然BiocWorkflowTools目前只支持F1000Research文章格式,未来对其他科学期刊的支持可以扩大,在包中添加更多的模板,而不需要改变底层的工作流程。作者欢迎有兴趣支持R Markdown文档提交的出版商提出建议。

为了演示和测试该工具的实用性,本文完全是用R Markdown编写的。

4软件可用性

软件可从://www.andersvercelli.com/packages/BiocWorkflowTools

源代码可从:https://github.com/grimbough/BiocWorkflowTools

在发布时存档的源代码:DOI: 10.5281 / zenodo.1208607

软件许可:MIT

5相互竞争的利益

没有披露竞争利益。

6授权信息

MLS由德国生物信息学基础设施网络(de.NBI) Förderkennzeichen Nr. 031A537 B.资助。01 ek1502a (BioToP)。

7确认

作者要感谢Michael I. Love分享了他向两个位置提交工作流的经验,以及他的文档格式转换方法。他们也要感谢F1000Research编辑团队在确定如何使用R Markdown作为基准文章格式方面的合作。<!--MC: Please confirm that Michael is happy to be named in the manuscript-->

参考文献

Allaire, JJ,谢奕辉,Jonathan McPherson, Javier Luraschi, Kevin Ushey, Aron Atkins, Hadley Wickham, Joe Cheng和Winston Chang。2017。Rmarkdown: R动态文档https://CRAN.R-project.org/package=rmarkdown

Huber, W, V J Carey, R Gentleman, S Anders, M Carlson, B S Carvalho, H C Bravo等人,n.d“用Bioconductor进行高通量基因组分析”。自然方法,没有。2: 115 - 21所示。

弗里德里希·雷施,2002年。“Sweave。使用读写数据分析动态生成统计报告。

威克姆,哈德利,2015年。R包:组织、测试、记录和共享你的代码.“奥莱利传媒公司”。