mashape 情感和 R 集成
mashape sentiment and R integration
这是一个 mashpe 情感分析 curl 代码返回 json。如何与 R 集成?
curl -X POST --include 'https://community-sentiment.p.mashape.com/text/' \
-H 'X-Mashape-Key: pVke3AAqHzmsh4xNdsKrPshYHQC1p1H78y0jsn2uwaEPcU1TnF' \
-H 'Content-Type: application/x-www-form-urlencoded' \
-H 'Accept: application/json' \
-d 'txt=Today is a good day'
编辑:另外,如何在变量中添加 -d 'txt=Today is a good day' 部分?说 text<-'Today is a good day' 并在 r 语法中使用可变文本。抱歉,如果它非常基础,我是 R 的新手。 – user3548327 刚刚编辑
只是 运行 它,并使用 JSON 包之一解析它:
R> res <- system("curl -s ....rest of your query as above...", intern=TRUE)
R> jsonlite::fromJSON(res[-(1:9)])
$result
$result$confidence
[1] "96.7434"
$result$sentiment
[1] "Positive"
R>
我添加了一个 -s
来保持 curl
安静,不知何故需要忽略不是 JSON...
的前 9 行
编辑: 由于 OP 似乎无法在没有明确示例的情况下使其工作,这里是另一个复制和粘贴:
R> res <- system("curl -s -X POST --include \
'https://community-sentiment.p.mashape.com/text/' -H \
-X-Mashape-Key: \
pVke3AAqHzmsh4xNdsKrPshYHQC1p1H78y0jsn2uwaEPcU1TnF' \
-H 'Content-Type: application/x-www-form-urlencoded' \
-H 'Accept: application/json' -d 'txt=Today is a good day'", \
intern=TRUE)
R> jsonlite::fromJSON(res[-(1:9)])
$result
$result$confidence
[1] "96.7434"
$result$sentiment
[1] "Positive"
R>
你需要把上面的\
去掉,全部排成一行。
即使在删除 \(顺便说一句,我很久以前就这样做了!)并确保所有语法完好无损之后,在我的 R 环境中,对于上述代码,我仍然收到代码 6 的错误或最终出现 500 错误.作为最后的手段,放弃了 system(curl..) 语法并使用了 postForm("http://sentiment.vivekn.com/api/text/",txt = "mysentence")。为我工作!感谢大家的帮助。
这是一个 mashpe 情感分析 curl 代码返回 json。如何与 R 集成?
curl -X POST --include 'https://community-sentiment.p.mashape.com/text/' \ -H 'X-Mashape-Key: pVke3AAqHzmsh4xNdsKrPshYHQC1p1H78y0jsn2uwaEPcU1TnF' \ -H 'Content-Type: application/x-www-form-urlencoded' \ -H 'Accept: application/json' \ -d 'txt=Today is a good day'
编辑:另外,如何在变量中添加 -d 'txt=Today is a good day' 部分?说 text<-'Today is a good day' 并在 r 语法中使用可变文本。抱歉,如果它非常基础,我是 R 的新手。 – user3548327 刚刚编辑
只是 运行 它,并使用 JSON 包之一解析它:
R> res <- system("curl -s ....rest of your query as above...", intern=TRUE)
R> jsonlite::fromJSON(res[-(1:9)])
$result
$result$confidence
[1] "96.7434"
$result$sentiment
[1] "Positive"
R>
我添加了一个 -s
来保持 curl
安静,不知何故需要忽略不是 JSON...
编辑: 由于 OP 似乎无法在没有明确示例的情况下使其工作,这里是另一个复制和粘贴:
R> res <- system("curl -s -X POST --include \
'https://community-sentiment.p.mashape.com/text/' -H \
-X-Mashape-Key: \
pVke3AAqHzmsh4xNdsKrPshYHQC1p1H78y0jsn2uwaEPcU1TnF' \
-H 'Content-Type: application/x-www-form-urlencoded' \
-H 'Accept: application/json' -d 'txt=Today is a good day'", \
intern=TRUE)
R> jsonlite::fromJSON(res[-(1:9)])
$result
$result$confidence
[1] "96.7434"
$result$sentiment
[1] "Positive"
R>
你需要把上面的\
去掉,全部排成一行。
即使在删除 \(顺便说一句,我很久以前就这样做了!)并确保所有语法完好无损之后,在我的 R 环境中,对于上述代码,我仍然收到代码 6 的错误或最终出现 500 错误.作为最后的手段,放弃了 system(curl..) 语法并使用了 postForm("http://sentiment.vivekn.com/api/text/",txt = "mysentence")。为我工作!感谢大家的帮助。