作为Microsoft认知服务实验室的一部分,我一直在弄混Anomaly Detection API。但是,当我尝试发布数据以获取响应时,它总是返回为
400: TypeError('string indices must be integers'
我认为这是我提供的数据格式的问题,我以sample的形式对其进行了仔细检查:
{
"Period": 7,
"Points": [
{
"Timestamp": "2018-03-01T00:00:00Z",
"Value": 32858923
},
{
"Timestamp": "2018-03-02T00:00:00Z",
"Value": 29615278
},
{
"Timestamp": "2018-03-03T00:00:00Z",
"Value": 22839355
},
]
}
这是我发送给它的一些返回错误的数据:
{
"Period": 1,
"Points":[
{
"Timestamp": "1962-01-01T00:00:00Z",
"Value": 589
},
{
"Timestamp": "1962-02-01T00:00:00Z",
"Value": 561
},
{
"Timestamp": "1962-03-01T00:00:00Z",
"Value": 640
}
]
}
使用Python使用requests
软件包调用API:
request = json.dumps(output)
config = json.load(open("config.json"))
url = "https://api.labs.cognitive.microsoft.com/anomalyfinder/v1.0/anomalydetection"
headers = {"Ocp-Apim-Subscription-Key": config["apiKey"]}
response = requests.post(url, headers=headers, json=request)
output
对象是一个像这样的字典:
{'Period': 1,
'Points': [{'Timestamp': '1962-01-01T00:00:00Z', 'Value': 589},
{'Timestamp': '1962-02-01T00:00:00Z', 'Value': 561},
{'Timestamp': '1962-03-01T00:00:00Z', 'Value': 640}]}
这是从monthly milk production data set派生的。
我的数据是否存在问题,我想使它返回该错误?