0

我正在使用 IBM Bluemix 和新的 SPSS Predictive Modeling 服务。我想使用部署在云中的模型对一些数据进行评分。在文档中,我有以下请求示例:

 Content-Type: application/json;charset=UTF-8
    Parameters:
        Path parameters:
            contextId: the identifier of the deployed model to be used to process this score request
        Query Parameters:
            accesskey: access_key from env.VCAP_SERVICES
        Body: the input data, json string, eg.
            {
                "tablename":"DRUG1n.sav", 
                "header":["Age", "Sex", "BP", "Cholesterol", "Na", "K", "Drug"], 
                "data":[[43.0, "M", "LOW", "NORMAL", 0.526102, 0.027164, "drugY"]]
            }  

我想使用 R 和 httr 包来完成请求。我写了以下代码:

library(httr)
#Score using a deployed predictive model
host = "https://ibmpmsrvus1.pmservice.ibmcloud.com:8443/pm/v1/score/"
access_key = "vvZ0DIc1d/oAzguseZS/cDf98us5bgi41pau9YEOtu81pRuVE1E2ND6v469pmmerEC2a6an71wxIdhb3gIZ5P7jnBaXJcLpJ+Ta+djR1Uu20nSZ+Rw9rXoOuXOuFsYgUnnipl9lQKr1S2ukXJrA2wA=="
contextId="drug"
url <- paste(host,contextId,"?accesskey=",access_key, sep = "")
data<-toJSON(list("tablename"= unbox("scoreInput"),
              "header" = c("Age", "Sex", "BP", "Cholesterol", "Na", "K","Drug"),
              "data" = c(unbox(43.0),"M","LOW","NORMAL",0.526102,0.027164,"drugY")

)) r<-POST(url,body = 数据, 编码 = 'json') r

使用 生成的 jsontoJSON有点不同:

{"tablename":"scoreInput","header":["Age","Sex","BP","Cholesterol","Na","K","Drug"],
"data":["43","M","LOW","NORMAL","0.526102","0.027164","drugY"]} 

没有[[数据的开头,这就是它不起作用的原因。我怎样才能添加这个双[?

任何帮助将不胜感激!

4

1 回答 1

1

尝试添加这样的内容类型:

r<-POST(url,body = data, content_type_json())
于 2015-03-18T20:48:38.073 回答