【问题标题】:How to store API key in .Rprofile?如何将 API 密钥存储在 .Rprofile 中?
【发布时间】:2016-06-08 10:50:42
【问题描述】:

我收到了一个令牌,可以通过 API 在 R 中访问 IUCN 红名单门户。从InsideR,我读到以下内容:

"iucn_summary 使用新的 Redlist API 来搜索 IUCN ID,所以我们内部使用了 rl_search 函数。该函数需要 API 密钥。在http://apiv3.iucnredlist.org/api/v3/token 获取密钥,并将其传递给 key 参数,或者存储在您的 .Renviron 文件中,例如 IUCN_REDLIST_KEY=yourkey 或在您的 .Rprofile 文件中,例如 options(iucn_redlist_key="yourkey")。我们强烈建议您不要在函数调用中传递密钥,而是将其存储在这两个文件之一中。这key 也会让你使用 rredlist 包。”

如何将我的密钥存储在.Rprofile

【问题讨论】:

  • 这些说明尽可能精确。使用问题中给出的代码编辑 .Renviron 或 .Rprofle 文件。您能否更具体地说明您卡在哪里?
  • Here's what R does on startup。阅读以找出您的.Renviron 文件在哪里(我不知道您使用的是什么操作系统)。然后在.Renviron 中添加一行,类似于:IUCN_REDLIST_KEY=yourkey。重新启动 R(如果打开),它将在环境中。
  • 我无法找到 .Renviron,但在我的 Windows PC 上找到了 .Rprofile:C:\Program Files\R\R-3.3.0\etc。我添加了行选项(iucn_redlist_key="yourkey")。

标签: r rprofile


【解决方案1】:

从 R 运行 file.edit("~/.Rprofile")file.edit("~/.Renviron") 这将打开文件。按如下方式输入您的值:

VAR1 = apikey1

VAR2 = apikey2

在 Linux 系统中 file.edit() 打开 vim,完成后,使用 : 退出插入模式并输入 :x 以保存编辑

更多主题:

https://cran.r-project.org/web/packages/httr/vignettes/secrets.html

【讨论】:

    【解决方案2】:

    snippet tii 
      setDefaults(getSymbols.${1:tiingo},env=.GlobalEnv,api.key="COPY AND PASTE YOUR OWN KEY HERE")

    这对你来说可能是最简单的方法了!

    不要让它变得复杂,既不是 .Rproject 文件,也不是其他修改初始设置。 直接创建一个包含您的信息的代码段。

    我的主要动机是将getSymbols.tiingo函数的api密钥存储在quantmod中,密钥是一串字符和数字,我不想每次打开Rstudio都登录tiingo网站查询我的密钥.简单的愿望,不是吗?

    这就是我所做的。

    工具>全局选项>代码>编辑sn-p。 然后根据需要创建一个 sn-p。

    保存这个 sn-p 并试一试。 就我而言,我只是在控制台中输入 tii,然后 Shift+Tab 锁定我的 sn-p,然后 ENTER,全部完成!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-26
      • 1970-01-01
      • 2020-02-01
      • 2010-10-13
      • 2016-06-25
      相关资源
      最近更新 更多