久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

使用 JPMML 評(píng)估 SAS 生成的 PMML 文件時(shí)出現(xiàn) FMTWID

FMTWIDTH error while using JPMML to evaluate a SAS produced PMML file(使用 JPMML 評(píng)估 SAS 生成的 PMML 文件時(shí)出現(xiàn) FMTWIDTH 錯(cuò)誤)
本文介紹了使用 JPMML 評(píng)估 SAS 生成的 PMML 文件時(shí)出現(xiàn) FMTWIDTH 錯(cuò)誤的處理方法,對大家解決問題具有一定的參考價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧!

問題描述

我有一個(gè)從 SAS Miner 生成的 PMML,我無法使用 JPMML 1.1.4 對其進(jìn)行正確評(píng)估.JPMML 1.1.4 說它支持 PMML 4.2,而 PMML 說它是 PMML 4.2 版.

I have a PMML generated from SAS Miner that I can't get properly evaluated using JPMML 1.1.4. JPMML 1.1.4 says it supports PMML 4.2 and the PMML says it is PMML version 4.2.

以下函數(shù)SAS-EM-String-Normalize"中的 FMTWIDTH 是正確的 PMML 語法嗎?

Is the FMTWIDTH in the below function "SAS-EM-String-Normalize" proper PMML syntax?

知道為什么我不能使用 JPMML 評(píng)估這個(gè)函數(shù)嗎?

Any ideas why I can't evaluation this function using JPMML?

我的 TransformationDictionary 中的函數(shù)看起來像,

I have the function in my TransformationDictionary that looks like,

<TransformationDictionary>
    <DefineFunction name="SAS-EM-String-Normalize" optype="categorical" dataType="string">
        <ParameterField name="FMTWIDTH" optype="continuous"/>
        <ParameterField name="AnyCInput" optype="categorical"/>
        <Apply function="trimBlanks">
          <Apply function="uppercase">
            <Apply function="substring">
              <FieldRef field="AnyCInput"/>
              <Constant>1</Constant>
              <Constant>FMTWIDTH</Constant>
            </Apply>
          </Apply>
        </Apply>   
    </DefineFunction>
</TransformationDictionary>

我得到以下異常,

線程主"org.jpmml.evaluator.TypeCheckException 中的異常:預(yù)期為 INTEGER,但得到 STRING (FMTWIDTH)org.jpmml.evaluator.FieldValue.asInteger(FieldValue.java:125) 在org.jpmml.evaluator.FunctionRegistry$36.evaluate(FunctionRegistry.java:463)在 org.jpmml.evaluator.FunctionUtil.evaluate(FunctionUtil.java:38)在org.jpmml.evaluator.ExpressionUtil.evaluateApply(ExpressionUtil.java:203)在org.jpmml.evaluator.ExpressionUtil.evaluate(ExpressionUtil.java:91)在 org.jpmml.evaluator.FunctionUtil.evaluate(FunctionUtil.java:76)在 org.jpmml.evaluator.FunctionUtil.evaluate(FunctionUtil.java:43)在org.jpmml.evaluator.ExpressionUtil.evaluateApply(ExpressionUtil.java:203)在org.jpmml.evaluator.ExpressionUtil.evaluate(ExpressionUtil.java:91)在org.jpmml.evaluator.ExpressionUtil.evaluateApply(ExpressionUtil.java:188)在org.jpmml.evaluator.ExpressionUtil.evaluate(ExpressionUtil.java:91)在org.jpmml.evaluator.ExpressionUtil.evaluate(ExpressionUtil.java:58)在org.jpmml.evaluator.ExpressionUtil.evaluate(ExpressionUtil.java:45)在org.jpmml.evaluator.ExpressionUtil.evaluateMapValues(ExpressionUtil.java:169)在org.jpmml.evaluator.ExpressionUtil.evaluate(ExpressionUtil.java:87)在org.jpmml.evaluator.ExpressionUtil.evaluate(ExpressionUtil.java:58)在org.jpmml.evaluator.ExpressionUtil.evaluate(ExpressionUtil.java:45)在org.jpmml.evaluator.RegressionModelEvaluator.evaluateRegressionTable(RegressionModelEvaluator.java:150)在org.jpmml.evaluator.RegressionModelEvaluator.evaluateClassification(RegressionModelEvaluator.java:107)在org.jpmml.evaluator.RegressionModelEvaluator.evaluate(RegressionModelEvaluator.java:57)在org.jpmml.evaluator.ModelEvaluator.evaluate(ModelEvaluator.java:65)在ValidPMMLTesterRandomScores.randomEvaluation(ValidPMMLTesterRandomScores.java:116)在ValidPMMLTesterRandomScores.printModelInformation(ValidPMMLTesterRandomScores.java:94)在ValidPMMLTesterRandomScores.readModelFromFile(ValidPMMLTesterRandomScores.java:142)在ValidPMMLTesterRandomScores.main(ValidPMMLTesterRandomScores.java:160)

Exception in thread "main" org.jpmml.evaluator.TypeCheckException: Expected INTEGER, but got STRING (FMTWIDTH) at org.jpmml.evaluator.FieldValue.asInteger(FieldValue.java:125) at org.jpmml.evaluator.FunctionRegistry$36.evaluate(FunctionRegistry.java:463) at org.jpmml.evaluator.FunctionUtil.evaluate(FunctionUtil.java:38) at org.jpmml.evaluator.ExpressionUtil.evaluateApply(ExpressionUtil.java:203) at org.jpmml.evaluator.ExpressionUtil.evaluate(ExpressionUtil.java:91) at org.jpmml.evaluator.FunctionUtil.evaluate(FunctionUtil.java:76) at org.jpmml.evaluator.FunctionUtil.evaluate(FunctionUtil.java:43) at org.jpmml.evaluator.ExpressionUtil.evaluateApply(ExpressionUtil.java:203) at org.jpmml.evaluator.ExpressionUtil.evaluate(ExpressionUtil.java:91) at org.jpmml.evaluator.ExpressionUtil.evaluateApply(ExpressionUtil.java:188) at org.jpmml.evaluator.ExpressionUtil.evaluate(ExpressionUtil.java:91) at org.jpmml.evaluator.ExpressionUtil.evaluate(ExpressionUtil.java:58) at org.jpmml.evaluator.ExpressionUtil.evaluate(ExpressionUtil.java:45) at org.jpmml.evaluator.ExpressionUtil.evaluateMapValues(ExpressionUtil.java:169) at org.jpmml.evaluator.ExpressionUtil.evaluate(ExpressionUtil.java:87) at org.jpmml.evaluator.ExpressionUtil.evaluate(ExpressionUtil.java:58) at org.jpmml.evaluator.ExpressionUtil.evaluate(ExpressionUtil.java:45) at org.jpmml.evaluator.RegressionModelEvaluator.evaluateRegressionTable(RegressionModelEvaluator.java:150) at org.jpmml.evaluator.RegressionModelEvaluator.evaluateClassification(RegressionModelEvaluator.java:107) at org.jpmml.evaluator.RegressionModelEvaluator.evaluate(RegressionModelEvaluator.java:57) at org.jpmml.evaluator.ModelEvaluator.evaluate(ModelEvaluator.java:65) at ValidPMMLTesterRandomScores.randomEvaluation(ValidPMMLTesterRandomScores.java:116) at ValidPMMLTesterRandomScores.printModelInformation(ValidPMMLTesterRandomScores.java:94) at ValidPMMLTesterRandomScores.readModelFromFile(ValidPMMLTesterRandomScores.java:142) at ValidPMMLTesterRandomScores.main(ValidPMMLTesterRandomScores.java:160)

推薦答案

根據(jù)PMML 內(nèi)置函數(shù)substring"的正式定義,它需要一個(gè)字符串參數(shù)和兩個(gè)整數(shù)參數(shù).SAS EM 生成的 PMML 代碼嘗試使用字符串參數(shù)、整數(shù)參數(shù)和另一個(gè)字符串參數(shù) substring($AnyCInput, 1, "FMTWIDTH") 調(diào)用此函數(shù).

According to the formal definition of the PMML built-in function "substring", it requires a string argument and two integer arguments. The SAS EM generated PMML code attempts to invoke this function with a string argument, an integer argument, and another string argument substring($AnyCInput, 1, "FMTWIDTH").

可以通過使用 FieldRef 元素訪問FMTWIDTH"參數(shù)的值來修復(fù)此 PMML 片段:

This PMML fragment can be fixed by accessing the value of the "FMTWIDTH" parameter using the FieldRef element:

<Apply function="substring">
  <FieldRef field="AnyCInput"/>
  <Constant>1</Constant>
  <FieldRef field="FMTWIDTH"/>
</Apply>

總之,JPMML 是正確的,SAS EM 是錯(cuò)誤的.

In conclusion, JPMML is a correct and SAS EM is wrong.

這篇關(guān)于使用 JPMML 評(píng)估 SAS 生成的 PMML 文件時(shí)出現(xiàn) FMTWIDTH 錯(cuò)誤的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

【網(wǎng)站聲明】本站部分內(nèi)容來源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問題,如果有圖片或者內(nèi)容侵犯了您的權(quán)益,請聯(lián)系我們刪除處理,感謝您的支持!

相關(guān)文檔推薦

Why does the android emulator camera stop unexpectedly?(為什么android模擬器相機(jī)會(huì)意外停止?)
Android camera , onPictureTaken(byte[] imgData, Camera camera) method amp; PictureCallback never called(Android camera , onPictureTaken(byte[] imgData, Camera camera) 方法 amp;PictureCallback 從未調(diào)用過) - IT屋-程序員軟件開發(fā)技
Understanding the libGDX Projection Matrix(了解 libGDX 投影矩陣)
QR code reading with camera - Android(使用相機(jī)讀取二維碼 - Android)
IP camera with OpenCv in Java(Java中帶有OpenCv的IP攝像頭)
Android mock Camera(Android 模擬相機(jī))
主站蜘蛛池模板: 日韩av手机在线 | 成人黄色免费 | 一区二区不卡 | 日韩中文字幕一区二区三区 | 日韩精品久久久久久久 | 日日骚av| 欧美理论在线观看 | 激情五月婷婷综合 | 久久96| 国产免费一区二区三区最新不卡 | 国产成人精品久久久 | 日韩欧美视频 | 日韩精品福利 | 婷婷国产 | 亚洲精品网址 | 亚洲天堂免费 | www.四虎.com| 久久黄色大片 | 国产精品视频免费看 | 亚洲精品在线视频 | 国产麻豆一区二区三区 | 日韩在线视频一区 | 激情综合网五月 | 国产三级黄色 | 欧美日韩亚洲一区二区三区 | 一区二区三区久久久 | 精品一区二区国产 | 国产激情综合五月久久 | 日韩专区中文字幕 | 中文字幕在线看片 | 日韩精品一区二区视频 | av免费在线观看网站 | 天堂资源网 | 久久视频一区二区 | 久久99热这里只频精品6学生 | 奇米影视亚洲春色 | 在线播放亚洲 | av影院在线| 91精品国 | 亚洲精品www久久久久久广东 | 国产亚洲欧洲 |