【发布时间】:2016-03-23 20:07:09
【问题描述】:
我正在尝试在 R 中自动进行 JSON 解析(我不得不从 URL 中删除“https://,因为我没有足够的信誉点):
library(Quandl)
library(jsonlite)
tmp <-
fromJSON("www.quandl.com/api/v3/datasets.json?database_code=WIKI&page=2",flatten = TRUE)
page=X 中的各种号码。上面的代码 sn -p 可以正常执行。为此,我尝试使用eval(parse()),但我做错了。所以我有以下内容:
text1 <- 'fromJSON("www.quandl.com/api/v3/datasets.json?database_code=WIKI&page='
text2 <- '",flatten = TRUE)'
and to verify that I create the string properly:
> text1
[1] "fromJSON(\www.quandl.com/api/v3/datasets.json?database_code=WIKI&page="
> text2
[1] "\",flatten = TRUE)"
> cat(text1,n,text2,sep="")
fromJSON("www.quandl.com/api/v3/datasets.json?database_code=WIKI&page=2",flatten = TRUE)
但是当我尝试执行时:
koko <- eval(parse(text = cat(text1,n,text2,sep="")))
如果n<-2 或任何其他整数,则控制台会冻结并显示以下错误消息:
?
Error in parse(text = cat(text1, n, text2, sep = "")) :
<stdin>:1:4: unexpected '{'
1: D_{
^
我在这里做错了什么?
【问题讨论】:
-
顺便说一句,我尝试在 text1 和 text2 字符串周围同时使用 "" 和 '' 但这没有帮助。
-
cat不会返回任何内容,我认为您应该改用paste0。见this answer -
为什么要使用
eval(parse())?