我在 Office 365 Sharepoint 上的文件夹中有 CSV 文件,我想将其导入到 R 中。在基本 RI 中获取:
> test <-
read.csv("https://MYURL/:x:/r/sites/MYSITE/Shared%20Documents/Q_10_2018.csv?
d=w5cbc38ea43c347689ec6d59a8285d769&csf=1&e=tZ6Lep",header=TRUE)
Error in file(file, "rt") : cannot open the connection
In addition: Warning message:
In file(file, "rt") :
cannot open URL
'https://MYURL.sharepoint.com/:x:/r/sites/MYSITE/Shared%20Documents/
Q_10_2018.csv?d=w5cbc38ea43c347689ec6d59a8285d769&csf=1&e=tZ6Lep': HTTP
status was '403 FORBIDDEN'
Run Code Online (Sandbox Code Playgroud)
我得到read_csv:
> test <-
read_csv("https://MYURL/:x:/r/sites/MYSITE/Shared%20Documents/Q_10_2018.csv?
d=w5cbc38ea43c347689ec6d59a8285d769&csf=1&e=tZ6Lep")
Error in open.connection(con, "rb") : HTTP error 403.
Run Code Online (Sandbox Code Playgroud)
我想提供一个可重现的问题,但由于这些是内部站点,我无法提供完整的 URL 并授予对我们公司服务器的访问权限。另外,我无法在这里找到和提问或其他文档来告诉我这个目标是否可以实现。
有人有任何线索吗?提前致谢。
bigrquery我在从我编写的 R Markdown 文档中连接到 GCP 服务帐户时遇到问题。当我从控制台尝试时,身份验证工作正常。两个都
library(bigrquery)
bq_auth()
Run Code Online (Sandbox Code Playgroud)
和
library(bigrquery)
bq_auth(email="my-service-account-email@myproject.iam.gserviceaccount.com")
Run Code Online (Sandbox Code Playgroud)
启动带有对话框的浏览器,让我按预期使用指定的帐户进行选择和身份验证。但在 R Markdown 中,任何像这样的尝试
options("httr_oob_default" = TRUE)
bq_auth(email="my-service-account-email@myproject.iam.gserviceaccount.com")
Run Code Online (Sandbox Code Playgroud)
甚至使用这样的完整列表
bq_auth(
email = "my-service-account-email@myproject.iam.gserviceaccount.com",
path = NULL,
scopes = c("https://www.googleapis.com/auth/bigquery"),
cache = gargle::gargle_oauth_cache(),
use_oob = gargle::gargle_oob_default(),
token = NULL
)
Run Code Online (Sandbox Code Playgroud)
导致错误
Error: Can't get Google credentials.
Are you running bigrquery in a non-interactive session? Consider:
* Call `bq_auth()` directly with all necessary specifics.
Run Code Online (Sandbox Code Playgroud)
谁能看到我缺少什么吗?提前致谢。
我想用来fread仅拉入名称与条件匹配的列。(在本例中,我想提取包含标签 的所有列。)想象一下,您在工作目录中email调用的文件中有此数据:tempdata.txt
col1,col2,col3,email1,email2,col4,url1,url2,col5
1,2,3,4,5,6,7,8,9
9,8,7,6,5,4,3,2,1
x,x,x,me@me.com,you@you.com,y,y,y,y
a,a,a,a,a,a,http://google.com,http://stackoverflow.com,a
Run Code Online (Sandbox Code Playgroud)
如果您知道名称,则可以用于fread加载列的子集:
test <- data.table::fread("tempdata.txt", select=c("email1","email2"))
> test
email1 email2
1: 4 5
2: 6 5
3: me@me.com you@you.com
4: a a
Run Code Online (Sandbox Code Playgroud)
是否也可以使用字符串匹配进行选择?我试图模仿这种行为,但在fread命令内:
> all <- data.table::fread("tempdata.txt")
> all %>% select(contains("email"))
email1 email2
1: 4 5
2: 6 5
3: me@me.com you@you.com
4: a a
Run Code Online (Sandbox Code Playgroud)
感谢您的任何见解。