繁体   English   中英

source_data R 来自私有存储库

[英]source_data R from private repository

我正在尝试从 R 中的私有存储库“数据”中读取一个 RData 文件

library(repmis)

source_data("https://github.com/**********.Rdata?raw=true") 

这是我的 output

Error in download_data_intern(url = url, sha1 = sha1, temp_file = temp_file) : 
  Not Found (HTTP 404). 

另一种方式

script <-
  GET(
    url = "https://api.github.com/repos/***/data/contents/01-wrangle-data-covid-ssa-mx-county.R",
    authenticate(Sys.getenv("GITHUB_PAT"), ""),     # Instead of PAT, could use password
    accept("application/vnd.github.v3.raw")
  ) %>%
  content(as = "text")

# Evaluate and parse to global environment
eval(parse(text = script))

任何人都知道如何从我在 R 的私人仓库中读取这些数据?

我可以解决这个问题。

  1. 在 GitHub 上生成您的个人令牌
    1.1 Go 至 GitHub
    2.1 在右上角 go 到“设置”
    2.2 然后在左边部分go 到“开发者设置”
    2.3 Select 选项“个人访问令牌”
    2.4 Select 选项“生成新令牌”
    2.5 复制您的个人令牌
  2. 在您的主目录上执行以下步骤
    2.1 创建文件.Renviron
macbook@user:~$ touch .Reviron

在这个文件上写下你的个人令牌,如下所示:

macbook@user:~$ nano .Reviron
GITHUB_PAT=YOUR PERSONAL TOKEN
  1. 现在在 R 上,您可以检查您的个人令牌是否已保存:
Sys.getenv("GITHUB_PAT")

您也可以使用以下命令在 R 上编辑您的令牌:

usethis::edit_r_environ()

不要忘记重新启动 R 以保存您的更改。

3.最后在 R 上,这些是将从私人存储库加载您的数据的行代码

library(httr)

req <- content(GET(
  "https://api.github.com/repos/you_group/your_repository/contents/your_path_to your_doc/df_test.Rdata",
  add_headers(Authorization = "token YOUR_TOKEN")
), as = "parsed")

tmp <- tempfile()
r1 <- GET(req$download_url, write_disk(tmp))
load(tmp)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM