我正在使用 jpmml 库来解析 PMML 文档(带有根元素 PMML 的 xml 文档)。我能够解析一些元素,但不是全部。在这里,我无法解析 RegressionTable 元素内的 CategoricalPredictor 属性。解析 CategoricalPredictor 的代码是:
RegressionTable regressionTable = new RegressionTable(intercept);
List<CategoricalPredictor> categoricalPredictor=regressionTable.getCategoricalPredictors();
/*Categorical predictors*/
System.out.println("Categorical Predictors:");
for(CategoricalPredictor c : categoricalPredictor){
System.out.println("Name :"+c.getName()+",\tValue :"+c.getValue()+
",\tCoefficient :"+c.getCoefficient());
System.out.println();
}
使用此代码,我只得到 Categorical Predictors: 作为输出。
我该怎么做才能得到它?你的努力将是可观的。
提前致谢。
最佳答案
您正在新构造的 RegressionTable#getCategoricalPredictors()
实例上调用 RegressionTable
。 getter 返回一个空的 List
,这是预期的行为。
如果要使用现有的 RegressionTable
实例,则需要从 PMML 文件中加载它,如下所示:
PMML pmml = ...
RegressionModelManager regressionManager = new RegressionModelManager(pmml);
RegressionModel model = regressionManager.getModel();
List<RegressionTable> modelTables = model.getRegressionTables();
for(RegressionTable regressionTable : regressionTables){
...
}
关于java - PMML 文档解析,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13813479/