的annotationhubdata.
包提供用于获取,注释,转换和存储用于Biocomiond的数据的工具annotationhub.
。Encode项目的BED文件、ensemble bl的gtf文件或UCSC的注释轨都是可以下载、用元数据描述、转换为标准的数据的例子生物体
数据类型,并存储使它们可以通过AnnotationHub客户端按需随时随地为用户提供服务。虽然数据通常被操纵成更友好的形式,但数据本身将保留其原始内容,并且不会像那些一样过滤或策划实验室。每个资源都有关联的元数据,可以通过annotationhub.
客户端界面。
添加多个相关资源annotationhub.
通过创建类似于现有注释包的软件包。包本身不包含数据,而是用作围绕脚本的轻量级包装器,为添加到添加的资源的元数据annotationhub.
。
包至少应该包含一个描述资源的手册页。小插曲和额外的R
用于操纵对象的代码是可选的。
创建包涉及以下步骤:
通知生物体
队员。
在软件包中的手册页和Vignette示例将无法工作,直到数据提供annotationhub.
。将数据添加到AWS S3和生产数据库的元数据涉及来自a的帮助生物体
队员。必须在数据正式添加到集线器之前创建元数据.CSV文件(请参阅下面的Inst / ExtData部分)。请阅读“数据文件存储”部分。
构建软件包:以下是包组织的轮廓。除非另有说明,否则需要列出的文件。
inst / extdata /
annotationhub.
数据库。该文件应该从inst / scripts / make-metadata.r中的代码生成,其中最终数据用write.csv写出(...,row.names = false)。指定了所需的列名和数据类型AnnotationHubData :: makeannotationhubmetadata.
。看 ?AnnotationHubData :: makeannotationhubmetadata.
获取详细信息。确保上面的函数在没有ERROR错误的情况下运行。如有必要,可以将元数据分解为多个CSV文件,而是在单个“元数据”中的所有记录中。
inst / scripts /
使数据。R: A script describing the steps involved in making the data object(s). This includes where the original data were downloaded from, pre-processing, and how the final R object was made. Include a description of any steps performed outside ofR
与第三方软件。脚本的输出应该是磁盘上的文件,准备被推到S3。如果要在个人网站上托管数据而不是S3,则此文件应在托管网站上之前解释数据的任何操作。对于在公共网站上托管的数据,没有先前的Manipultaion此文件是不需要的。
make-metadata.r:一个脚本,用于使位于包的Inst / ExtData中的Metadata.csv文件。看 ?AnnotationHubData :: makeannotationhubmetadata.
有关Metadata.csv文件的描述,预期的字段和数据类型。的AnnotationHubData :: makeannotationhubmetadata()
函数可用于在提交包之前验证metadata.csv文件。
鸽子/
可选的Vignette描述分析工作流程。
R /
可选的函数来增强数据探索。
人/
包手册页:可选。包装页面用作着陆点,应该简要描述与包相关联的所有资源。应在包手册页或单个男人页面上有一个条目。
资源手册页:可选。手册页应该描述资源(原始数据源、处理、QC步骤),并演示如何通过annotationhub.
界面。例如,替换下面的“SearchTerm *”,其中包含一个或多个唯一标识包中资源的搜索术语。
myfiles[[1]] ##加载列表中的第一个资源
描述/命名空间用于生成元数据的脚本可能会根据需要使用来自注释空调或注释的函数,这应该以依赖/导入列出。BIOCVIEWS应包含术语annotationdata.并应该包含这个术语annotationhub.
。
数据对象:数据不是软件包的正式部分,而是单独存储在一个可公开访问的托管站点中,或者由Bioconductor存储在AWS S3桶中。作者应该阅读下面关于“数据文件的存储”的章节。
确认有效元数据:通过在您的包上运行AnnotationHubData:::makeAnnotationHubMetadata()来确认inst/exdata/metadata.csv中的数据是有效的。请说明地址和警告或错误。
包审查:将包裹提交给追踪器进行审核。包检查的主要目的是验证csv文件中的元数据。因为数据和元数据还没有到位,所以如果包的CMD构建和检查失败是可以的。一旦批准了元数据.csv,记录就会添加到生产数据库中。这时,包手册页和小插图就可以定稿了,包应该通过R CMD构建和检查。
可以将新版本的元数据添加到与其可用时的相同包中。
新版本的标题应该是唯一的,不匹配当前注释中的任何资源的标题。良好做法是包括标题中的版本和/或基因组。如果标题不是唯一的,那么annotationhub.
对象将列出具有相同标题的多个文件。用户需要使用“rdatadateadded”来确定哪个是最新的。
可用数据:可在可公开访问的站点上或查看“上传数据到S3的部分”
使用新的元数据信息更新make-metadata.r
生成一个新的元数据.csv文件。包应包含AnnotationHub中所有版本的数据的元数据,因此旧文件应保留。添加新版本时,它可能有助于编写名为Version的新CSV文件,例如MetAdata_v84.csv,Metadata_85.csv等。
Bump包版本并提交到git
通知hubs@biocondion.org.更新已经就绪,团队成员将向生产数据库添加新的元数据;在将元数据添加到数据库之前,新的资源在AnnotationHub中是不可见的。
接触hubs@biocondion.org.或者维护器@biocadiond.org.有任何问题。
包的概念和目录结构将保持不变。所涉及的主要步骤是
重构inst / extdata和脚本以包含Metadata.csv和make-data.r,如上文所描述的用于创建新包。通过运行来确保格式正确地格式化元数据.CSV文件AnnotationHubData :: makeannotationhubmetadata()
在你的包裹上。
将BioCViews术语“AnnotationHub”添加到描述
将数据上传到S3或放置在公共可访问的站点上,并从包中删除数据。参见下面的“数据文件的存储”一节。
正式添加到集线器中的数据后,更新任何代码以利用AnnotationHub以检索数据。
错误修复可能涉及更改元数据,数据资源或两者。
替换资源必须与原始资源具有相同的名称,并且在相同的位置(路径)。
通知hubs@biocondion.org.您希望替换数据并使文件可用:请参阅“上传数据到S3”部分。
可以为新资源添加新的元数据记录,但不鼓励修改现有记录。记录修改只会在错误修复的情况下完成。
通知hubs@biocondion.org.你想要改变元数据
更新make-metadata.r并重新生成元数据.csv文件
碰到包版本并提交git
从。中移除资源时annotationhub.
发生了两件事:“rdataDateremoved”字段用日期填充,“状态”字段被填充,具有资源不再可用的原因。一旦进行了这些变化,就会annotationhub()
构造函数不会列出可用ID之间的资源。尝试用“[[[[[[[['和AH ID来提取资源将与状态消息一起返回错误。功能getInfoOnIds
将显示任何资源的元数据信息,包括仍在数据库中但不再可用的资源。
通常,只有在不再可用的时间(例如,从Web位置移动,不再提供等)时,才会删除资源。
从。中移除资源annotationhub.
接触hubs@biocondion.org.或者维护器@biocadiond.org.。
版本化资源由维护者处理。如果您计划向同一生物/基因组构建的文件提供增量更新,我们建议在资源标题中包括一个版本,因此很容易区分哪个是最新的。我们还将推荐将数据上载到S3或可公开访问的站点时,以具有用于版本控制的目录结构。
如果您不包含一个版本,或以某种方式使标题唯一,则将列出具有相同标题的多个文件annotationhub.
目的。用户可以使用“rdatadateadded”元数据字段来确定哪个文件是最新的。
几个元数据字段控制用户调用AnnotationHub()时可见哪些资源。根据这些标准过滤记录:
一旦将一条记录添加到AnnotationHub,它从该点开始就是可见的,直到打上“rdatadateremoved”标记为止。例如,2017年5月1日添加的带有“biocVersion”3.6的记录将在所有快照>= 2017年5月1日和所有Bioconductor版本>= 3.6中可见。
使用用于ORGDB的特殊过滤器。每个释放/开发循环只能使用一个ORGDB。因此,添加到开发循环的贡献ORGDB掩蔽至下列释放。有选项可调试这些屏蔽资源。看?诱惑andhuboption.
数据不应包含在包中。这使包装重量轻,快速安装用户。这允许用户在不下载大数据文件的情况下调查函数和文档,并且仅在必要时进行下载。有两个选项用于存储数据:Biocumon AWS S3桶或在可公开可访问的站点上托管其他地方的数据。请参阅下面的信息,然后选择最适合您情况的选项。
可以通过来自任何可公开访问的站点的集线器访问数据。metadata.csv文件[s]将需要列location_prefix.
表示托管站点。在下面的元数据列/字段的描述中查看更多,但如果数据文件的链接是一个快速示例ftp://mylocalserver/singlecellexperiments/dataset1.rds.
一个示例细分location_prefix.
和RdataPath.
在Metadata.csv文件中为此条目将是ftp://mylocalserver/
为了location_prefix.
和singlecellexperiments / dataset1.rds.
为了RdataPath.
。
通过Dropbox,FTP等提供数据文件,而不是提供数据文件,我们将临时访问您可以上传数据的S3存储桶。请电子邮件hubs@biocondion.org.访问。
您将获得访问“Annotation Contributor”用户。确保这一点AWS CLI.
安装在您的机器上。请参阅安装说明AWS CLI.
这里。一旦您请求访问,您将通过电子邮件发送一组密钥。有两个选项可为注释复印机设置配置文件
.aws / config.
文件以包括以下更新键相应:[Profile Annotation Contributor]输出= Text Region = Us-East-1 AWS_ACCES_KEY_ID = **** AWS_SECRET_ACCESS_KEY = ****
.aws / config.
文件,运行以下命令从上面输入适当的信息AWS配置--Profile AnnotationContributor
设置配置后,您应该能够使用使用的资源
——profile AnnotationContributor s3 cp test_file.txt——acl public-read .txt //注释贡献者/test_file.txt
请使用相应的目录结构上传数据,包括必要子目录(即顶部目录必须是软件包名称,如果适用,则为版本的子目录,......)。另外不要忘记使用国旗- 公开阅读
;这允许读访问数据文件。
一旦上传完成,电子邮件hubs@biocondion.org.继续这个过程。要正式添加数据,需要上载数据,并且需要在GitHub存储库中创建元数据.CSV文件。
如上所述,在数据可以添加到数据库之前,需要创建元数据.CSV文件(或多个元数据.CSV文件)。要确保正确的格式化应该运行AnnotationHubData :: makeannotationhubmetadata.
在包中添加任何/所有元数据文件,并处理发生的错误。每个上传到S3的数据对象在元数据文件中都应该有一个条目。简单地说,需要的元数据列的描述:
devel版本
生物导体。文件路径
而不是尝试将文件加载到R中,而不是将路径返回到本地下载的文件。csv文件中的任何附加列都将被忽略,但可以包含其中作为内部引用。
更多关于位置_prefix和rdatapath。这两个字段构成了用于下载数据文件的完整文件路径URL。如果使用Biocumon AWS S3存储桶,则不会在元数据文件中包含Location_Prefix [S],因为此字段将自动填充。RDataPath将是您上传到S3的目录结构。如果您上传了一个目录MyAnnotation /
,该目录有一个子目录v1 /
包含两个文件counts.rds.
和coldata.rds
,您的元数据文件将包含两行,rdatapaths将是MyAnnotation / v1 / counts.rds
和MyAnnotation / v1 / coldata.rds
。如果您在公开访问的网站上托管数据,则必须包含基本URLlocation_prefix.
。如果您的数据文件是在ftp://myinstiututeserver/biostats/project2/counts.rds
,您的元数据文件将有一行和location_prefix.
将ftp:// myinstiututeServer /
和RdataPath.
将Biostats / Project2 / Counts.rds
。
这是一个不好的例子,因为这些注释已经在集线器中,但它应该让您了解格式。假设我有一个包myannotations,我上传了两个注释文件,用于狗和牛,从Enembl到S3中提取的信息。您希望下面保存为CSV(逗号分隔输出),但更容易查看我们在表中显示:
标题 | 描述 | 生物转换 | 基因组 | sourcetype. | sourceurl. | SourceVersion | 物种 | 罗论坛 | 坐标_1_based. | dataprovider. | 维护人员 | rdataclass. | 调整 | RdataPath. |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
狗注释 | 犬狼疮的基因注释 | 3.9 | Canis Lupus. | GTF. | ftp://ftp.ensembl.org/pub/release-95/gtf/canis_lupus_dingo/Canis_lupus_dingo.ASM325472v1.95.gtf.gz | 发布-95. | Canis Lupus. | 9612 | 真的 | Ensembl. | Bioconducts维护者维护器@biocadiond.org. | 字符 | 文件路径 | MyAnnotations / canis_lupus_dingo.asm325472v1.95.gtf.gz. |
牛注释 | 来自合奏的Bos Taurus的基因注释 | 3.9 | Bos Taurus. | GTF. | ftp://ftp.ensembl.org/pub/release-74/gtf/bos_taurus/bos_taurus.umd3.1.74.gtf.gz. | 发布-74. | Bos Taurus. | 9913 | 真的 | Ensembl. | Bioconducts维护者维护器@biocadiond.org. | 字符 | 文件路径 | myannotations / bos_taurus.umd3.1.74.gtf.gz. |