Search in sources :

Example 56 with Config

use of org.knime.core.node.config.Config in project knime-core by knime.

the class DecisionTreeNodeLeaf method saveNodeInternalsToPredParams.

/**
 * {@inheritDoc}
 */
@Override
public void saveNodeInternalsToPredParams(final ModelContentWO pConf, final boolean saveKeysAndPatterns) {
    // if the keys and colors are supposed to be stored
    if (saveKeysAndPatterns) {
        Config patternsConfig = pConf.addConfig(CONFIG_KEY_PATTERNS);
        int counter = 0;
        for (RowKey entry : m_coveredPattern) {
            patternsConfig.addString(CONFIG_KEY_PATTERN + "_" + counter, entry.getString());
            counter++;
        }
    }
}
Also used : RowKey(org.knime.core.data.RowKey) Config(org.knime.core.node.config.Config)

Example 57 with Config

use of org.knime.core.node.config.Config in project knime-core by knime.

the class DecisionTreeNodeLeaf method loadNodeInternalsFromPredParams.

/**
 * {@inheritDoc}
 */
@Override
public void loadNodeInternalsFromPredParams(final ModelContentRO pConf) throws InvalidSettingsException {
    // if the keys and colors are available for loading
    if (pConf.containsKey(CONFIG_KEY_PATTERNS)) {
        Config patternsConfig = pConf.getConfig(CONFIG_KEY_PATTERNS);
        Set<RowKey> coveredPatterns = new HashSet<>();
        for (String key : patternsConfig) {
            RowKey keyCell;
            try {
                keyCell = new RowKey(patternsConfig.getDataCell(key).toString());
            } catch (InvalidSettingsException ise) {
                keyCell = new RowKey(patternsConfig.getString(key));
            }
            coveredPatterns.add(keyCell);
        }
        m_coveredPattern = coveredPatterns;
    }
}
Also used : RowKey(org.knime.core.data.RowKey) InvalidSettingsException(org.knime.core.node.InvalidSettingsException) Config(org.knime.core.node.config.Config) HashSet(java.util.HashSet)

Example 58 with Config

use of org.knime.core.node.config.Config in project knime-core by knime.

the class DecisionTreeNodeSplitPMML method saveNodeSplitInternalsToPredParams.

/**
 * {@inheritDoc}
 */
@Override
public void saveNodeSplitInternalsToPredParams(final ModelContentWO pConf) {
    int i = 0;
    for (PMMLPredicate pred : m_splitPred) {
        Config predConfig = pConf.addConfig("pred" + i++);
        pred.saveToPredParams(predConfig);
    }
}
Also used : Config(org.knime.core.node.config.Config) PMMLPredicate(org.knime.base.node.mine.decisiontree2.PMMLPredicate)

Example 59 with Config

use of org.knime.core.node.config.Config in project knime-core by knime.

the class DecisionTreeNodeSplitPMML method loadNodeSplitInternalsFromPredParams.

/**
 * {@inheritDoc}
 */
@Override
public void loadNodeSplitInternalsFromPredParams(final ModelContentRO pConf) throws InvalidSettingsException {
    m_splitPred = new PMMLPredicate[pConf.getInt("nrChildren")];
    for (int i = 0; i < m_splitPred.length; i++) {
        Config predConfig = pConf.getConfig("pred" + i);
        m_splitPred[i] = PMMLPredicate.getPredicateForConfig(predConfig);
        m_splitPred[i].loadFromPredParams(predConfig);
    }
}
Also used : Config(org.knime.core.node.config.Config)

Example 60 with Config

use of org.knime.core.node.config.Config in project knime-core by knime.

the class DecisionTreeNode method loadFromPredictorParams.

/**
 * Load node from a model content object.
 *
 * @param predParams configuration object to load decision tree from
 * @throws InvalidSettingsException if something goes wrong
 */
public void loadFromPredictorParams(final ModelContentRO predParams) throws InvalidSettingsException {
    m_class = predParams.getDataCell("class");
    m_allClassFreq = predParams.getDouble("allClassFreq");
    m_ownClassFreq = predParams.getDouble("ownClassFreq");
    m_ownIndex = predParams.getInt("ownIndex");
    m_prefix = predParams.getString("prefix");
    if (predParams.containsKey("newColors")) {
        m_newColors = predParams.getBoolean("newColors");
    }
    DataCell[] keys = predParams.getDataCellArray("classes");
    double[] values = predParams.getDoubleArray("frequencies");
    if (keys.length != values.length) {
        throw new InvalidSettingsException("DecisionTreeNode: Can't read" + " class frequencies, array-lenghts don't match!");
    }
    m_classCounts = new LinkedHashMap<DataCell, Double>();
    for (int i = 0; i < keys.length; i++) {
        m_classCounts.put(keys[i], values[i]);
    }
    // and finally load all internals of the derived class as well
    loadNodeInternalsFromPredParams(predParams);
    // if the keys and colors are stored load them
    if (predParams.containsKey(CONFIG_KEY_COLORS)) {
        m_coveredColors.clear();
        Config colorsConfig = predParams.getConfig(CONFIG_KEY_COLORS);
        for (String key : colorsConfig) {
            Config colorConfig = colorsConfig.getConfig(key);
            int red = colorConfig.getInt(CONFIG_KEY_RED);
            int green = colorConfig.getInt(CONFIG_KEY_GREEN);
            int blue = colorConfig.getInt(CONFIG_KEY_BLUE);
            double count = colorConfig.getDouble(CONFIG_KEY_COUNT);
            m_coveredColors.put(new Color(red, green, blue), count);
        }
    }
}
Also used : InvalidSettingsException(org.knime.core.node.InvalidSettingsException) Config(org.knime.core.node.config.Config) Color(java.awt.Color) DataCell(org.knime.core.data.DataCell)

Aggregations

Config (org.knime.core.node.config.Config)84 InvalidSettingsException (org.knime.core.node.InvalidSettingsException)25 Color (java.awt.Color)10 File (java.io.File)10 FileOutputStream (java.io.FileOutputStream)8 NodeSettings (org.knime.core.node.NodeSettings)8 ArrayList (java.util.ArrayList)7 DataColumnSpec (org.knime.core.data.DataColumnSpec)7 ConfigRO (org.knime.core.node.config.ConfigRO)7 HashMap (java.util.HashMap)6 GZIPOutputStream (java.util.zip.GZIPOutputStream)6 LinkedHashMap (java.util.LinkedHashMap)5 DataColumnSpecCreator (org.knime.core.data.DataColumnSpecCreator)5 DataTableSpec (org.knime.core.data.DataTableSpec)5 SimpleStreamableOperatorInternals (org.knime.core.node.streamable.simple.SimpleStreamableOperatorInternals)5 FileInputStream (java.io.FileInputStream)4 IOException (java.io.IOException)4 HashSet (java.util.HashSet)4 GZIPInputStream (java.util.zip.GZIPInputStream)4 DataCell (org.knime.core.data.DataCell)4