4

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:しか得られません。

それを取得するにはどうすればよいですか?あなたの努力はかなりのものになります。前もって感謝します。

4

1 に答える 1

1

RegressionTable#getCategoricalPredictors()新しく構築されたRegressionTableインスタンスを呼び出しています。ゲッターは空Listを返します。これは予想される動作です。

既存のRegressionTableインスタンスを操作する場合は、PMMLファイルから次のようにロードする必要があります。

PMML pmml = ...
RegressionModelManager regressionManager = new RegressionModelManager(pmml);
RegressionModel model = regressionManager.getModel();
List<RegressionTable> modelTables = model.getRegressionTables();
for(RegressionTable regressionTable : regressionTables){
  ...
}
于 2012-12-11T11:59:29.487 に答える