技术文章 - CS415472

使用 DateTime 作为时间特征对时间序列模型进行评分时出错“执行服务 XXXX 消息时出错::无法处理请求:[对于输入字符串:”

已修改: 03-May-2024   


注意:本文已使用机器翻译软件翻译,以方便非英语客户阅读。但翻译内容可能包含语法错误或不准确之处。请注意, PTC对本文所含信息的翻译准确性及使用后果不承担任何责任。请在 此处 查看本文的英文原始版本以便参考。有关机器翻译的更多详情,请单击 此处
感谢您告诉我们。我们将尽快审阅此译文。

适用于

  • ThingWorx Analytics 9.3 to 9.5

说明

  • 针对使用DateTime数据类型作为 TEMPORAL 特征的时间序列模型对新数据进行评分时收到以下错误
WARN  c.t.a.a.r.SyncPredictiveScoringResource - Failed to score with:PredictiveScoringRequest [dataSource=DatasetRef [dataRef=CsvBodyDataRef [hasHeader=true, uri=body:///, format=csv, data=[data] ], schemaRef=null, filter=, exclusions=[]], modelUri=results:/models/XXXX, scoringName=ignored, importantFieldCount=0, goalName=null, description=null, causalTechnique=FULL_RANGE, preferredCategoricalValues=null, categoricalLimit=null, tags=null, identifierFields=null]
java.lang.NumberFormatException: For input string: "2016-03-08T02:00:00.000Z"
	at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
	at java.base/java.lang.Long.parseLong(Long.java:692)
	at java.base/java.lang.Long.valueOf(Long.java:1144)
	at com.thingworx.analytics.unicron.timeseries.TimeSeriesTransformer$Builder.lambda$createRowToKeyedRowFunction$50e661ed$1(TimeSeriesTransformer.java:456)
	at com.thingworx.analytics.unicron.timeseries.TimeSeriesTransformer$Builder.lambda$createRowToKeyedRowFunction$114dfc31$1(TimeSeriesTransformer.java:459)
...
  • 使用 RealtimeScore 服务进行评分:
let dsref = Resources["InfoTableFunctions"].CreateInfoTableFromDataShape({
    dataShapeName: "AnalyticsDatasetRef"
});


let newEntry = {
   // datasetUri: "body:/", // STRING
    format: undefined, // STRING
    filter: undefined, // STRING
    exclusions: undefined, // INFOTABLE {"dataShape":"GenericStringList"}
    data: me.scoreData // INFOTABLE

};
dsref.AddRow(newEntry);

var predictiveScores = Things["AnalyticsServer_PredictionThing"].RealtimeScore({
	modelUri: "results:/models/" + me.modelID,
    datasetRef: dsref
});

这是文章 415472 的 PDF 版本,可能已过期。最新版本 CS415472