我的项目负责人告诉我,与NCBI连接以检索序列条目而不发送标识信息(如我们的机构电子邮件)是不可接受的。他们声称这意味着如果我们违反了他们的用户指南,NCBI不会立即阻止我们的连接,他们会先给我们发电子邮件。我们使用Rstudio和retrieve包从NCBI Genbank中检索蛋白质序列。
但我不确定这是否有必要,或者说,如果兰斯有办法做到这一点的话。作为参考,这是我们代码的一般格式。
sequence <- entrez_fetch(db="nuccore", id=**accession_number**, rettype="fasta")Rentrez在他们的文档中说:“NCBI将禁止在他们的用户指南中不使用EUtils的In。特别是/enumerated /item不超过每秒发送三个请求(rentrez强制执行这个限制) /item,如果您计划发送超过100个请求的序列,对于大型请求则在高峰时间之外使用web历史方法(见entrez_search示例或使用entrez_post上传ID)。”
entrez_search和entrez_post都包含一个名为"web_history A web_history对象“的参数,用于随后对NCBI的调用。
我找不到任何参数或函数等,允许用户在连接时向NCBI发送标识信息。
发布于 2022-04-04 00:18:13
似乎您需要一个API密钥。您可以从您的NCBI帐户中交互地获得一个,并且需要在您的.bash_profile中指定它(至少在mac上,使用bash,这里不确定您选择的OS /终端)。
对于命令行的使用,只需将其设置为变量,并将以下行添加到您的配置文件中:
export NCBI_API_KEY=<yourkeyehere>那么,只要R是加载时,当它旋转,你应该是好的。
编辑:这里有一点切题,您可以从FTP站点抓取文件,其中包含curl和wget等实用工具,甚至没有API键的Biostring函数,但是如果要使用eutils访问东西,则需要一个--只要您正在查看X--每秒的查询数--但是如果您在这个阈值以下,我认为他们不会那么在意。
https://stackoverflow.com/questions/71714072
复制相似问题