Example usage for weka.core Range setRanges

List of usage examples for weka.core Range setRanges

Introduction

In this page you can find the example usage for weka.core Range setRanges.

Prototype



public void setRanges(String rangeList) 

Source Link

Document

Sets the ranges from a string representation.

Usage

From source file:adams.flow.transformer.WekaExperimentEvaluation.java

License:Open Source License

/**
 * Sets up the testing algorithm and returns it.
 *
 * @param data   the experimental data//from w  w  w.j a  v a2s  .  co  m
 * @return      the configured testing algorithm
 * @throws Exception    If something goes wrong, like testing algorithm of
 *          result matrix cannot be instantiated
 */
protected Tester getTester(Instances data) throws Exception {
    Tester ttester;
    ResultMatrix matrix;
    String tmpStr;
    weka.core.Attribute att;
    List<String> rows;
    List<String> cols;
    String selectedList;
    String selectedListDataset;
    boolean comparisonFieldSet;
    int i;
    String name;
    Range generatorRange;

    ttester = (Tester) Utils.deepCopy(m_Tester);
    matrix = (ResultMatrix) Utils.deepCopy(m_OutputFormat);
    ttester.setInstances(data);
    ttester.setSignificanceLevel(m_Significance);
    ttester.setShowStdDevs(matrix.getShowStdDev());
    ttester.setSortColumn(-1);

    if (!m_SwapRowsAndColumns) {
        rows = determineColumnNames(m_Row, ExperimenterDefaults.getRow());
        cols = determineColumnNames(m_Column, ExperimenterDefaults.getColumn());
    } else {
        cols = determineColumnNames(m_Row, ExperimenterDefaults.getRow());
        rows = determineColumnNames(m_Column, ExperimenterDefaults.getColumn());
    }
    selectedList = "";
    selectedListDataset = "";
    comparisonFieldSet = false;
    for (i = 0; i < data.numAttributes(); i++) {
        name = data.attribute(i).name();

        if (rows.contains(name.toLowerCase())) {
            selectedListDataset += "," + (i + 1);
        } else if (name.toLowerCase().equals("key_run")) {
            ttester.setRunColumn(i);
        } else if (name.toLowerCase().equals("key_fold")) {
            ttester.setFoldColumn(i);
        } else if (cols.contains(name.toLowerCase())) {
            selectedList += "," + (i + 1);
        } else if (name.toLowerCase().contains(ExperimenterDefaults.getComparisonField())) {
            comparisonFieldSet = true;
        } else if ((name.toLowerCase().contains("root_relative_squared_error")) && (!comparisonFieldSet)) {
            comparisonFieldSet = true;
        }
    }
    generatorRange = new Range();
    if (selectedList.length() != 0) {
        try {
            generatorRange.setRanges(selectedList);
        } catch (Exception ex) {
            handleException("Failed to set ranges: " + selectedList, ex);
        }
    }
    ttester.setResultsetKeyColumns(generatorRange);

    generatorRange = new Range();
    if (selectedListDataset.length() != 0) {
        try {
            generatorRange.setRanges(selectedListDataset);
        } catch (Exception ex) {
            handleException("Failed to set dataset ranges: " + selectedListDataset, ex);
        }
    }
    ttester.setDatasetKeyColumns(generatorRange);

    tmpStr = m_ComparisonField.getField();
    att = data.attribute(tmpStr);
    if (att == null)
        throw new Exception("Cannot find comparison field '" + tmpStr + "' in data!");
    ttester.setDisplayedResultsets(null); // all
    ttester.setResultMatrix(matrix);

    return ttester;
}

From source file:milk.gui.experiment.MIResultsPanel.java

License:Open Source License

/**
 * Sets up the panel with a new set of instances, attempting
 * to guess the correct settings for various columns.
 *
 * @param newInstances the new set of results.
 *//*w  w w.j  a v  a2s .c  om*/
public void setInstances(Instances newInstances) {

    m_Instances = newInstances;
    m_TTester.setInstances(m_Instances);
    m_FromLab.setText("Got " + m_Instances.numInstances() + " results");

    // Temporarily remove the configuration listener
    m_RunCombo.removeActionListener(m_ConfigureListener);

    // Do other stuff
    m_DatasetKeyModel.removeAllElements();
    m_RunModel.removeAllElements();
    m_ResultKeyModel.removeAllElements();
    m_CompareModel.removeAllElements();
    int datasetCol = -1;
    int runCol = -1;
    String selectedList = "";
    String selectedListDataset = "";
    for (int i = 0; i < m_Instances.numAttributes(); i++) {
        String name = m_Instances.attribute(i).name();
        m_DatasetKeyModel.addElement(name);
        m_RunModel.addElement(name);
        m_ResultKeyModel.addElement(name);
        m_CompareModel.addElement(name);

        if (name.toLowerCase().equals("key_dataset")) {
            m_DatasetKeyList.addSelectionInterval(i, i);
            selectedListDataset += "," + (i + 1);
        } else if ((runCol == -1) && (name.toLowerCase().equals("key_run"))) {
            m_RunCombo.setSelectedIndex(i);
            runCol = i;
        } else if (name.toLowerCase().equals("key_fold")) {
            m_TTester.setFoldColumn(i);
        } else if (name.toLowerCase().equals("key_scheme") || name.toLowerCase().equals("key_scheme_options")
                || name.toLowerCase().equals("key_scheme_version_id")) {
            m_ResultKeyList.addSelectionInterval(i, i);
            selectedList += "," + (i + 1);
        } else if (name.toLowerCase().indexOf("percent_correct") != -1) {
            m_CompareCombo.setSelectedIndex(i);
            //   break;
        } else if ((name.toLowerCase().indexOf("root_relative_squared_error") != -1)
                && (m_CompareCombo.getSelectedIndex() < 0)) {
            m_CompareCombo.setSelectedIndex(i);
        }
    }
    if (runCol == -1) {
        runCol = 0;
    }
    m_DatasetKeyBut.setEnabled(true);
    m_RunCombo.setEnabled(true);
    m_ResultKeyBut.setEnabled(true);
    m_CompareCombo.setEnabled(true);

    // Reconnect the configuration listener
    m_RunCombo.addActionListener(m_ConfigureListener);

    // Set up the TTester with the new data
    m_TTester.setRunColumn(runCol);
    Range generatorRange = new Range();
    if (selectedList.length() != 0) {
        try {
            generatorRange.setRanges(selectedList);
        } catch (Exception ex) {
            ex.printStackTrace();
            System.err.println(ex.getMessage());
        }
    }
    m_TTester.setResultsetKeyColumns(generatorRange);

    generatorRange = new Range();
    if (selectedListDataset.length() != 0) {
        try {
            generatorRange.setRanges(selectedListDataset);
        } catch (Exception ex) {
            ex.printStackTrace();
            System.err.println(ex.getMessage());
        }
    }
    m_TTester.setDatasetKeyColumns(generatorRange);

    m_SigTex.setEnabled(true);

    setTTester();
}

From source file:milk.gui.experiment.MIResultsPanel.java

License:Open Source License

public void setResultKeyFromDialog() {

    ListSelectorDialog jd = new ListSelectorDialog(null, m_ResultKeyList);

    // Open the dialog
    int result = jd.showDialog();

    // If accepted, update the ttester
    if (result == ListSelectorDialog.APPROVE_OPTION) {
        int[] selected = m_ResultKeyList.getSelectedIndices();
        String selectedList = "";
        for (int i = 0; i < selected.length; i++) {
            selectedList += "," + (selected[i] + 1);
        }//from w w w. j ava 2 s.c o m
        Range generatorRange = new Range();
        if (selectedList.length() != 0) {
            try {
                generatorRange.setRanges(selectedList);
            } catch (Exception ex) {
                ex.printStackTrace();
                System.err.println(ex.getMessage());
            }
        }
        m_TTester.setResultsetKeyColumns(generatorRange);
        setTTester();
    }
}

From source file:milk.gui.experiment.MIResultsPanel.java

License:Open Source License

public void setDatasetKeyFromDialog() {

    ListSelectorDialog jd = new ListSelectorDialog(null, m_DatasetKeyList);

    // Open the dialog
    int result = jd.showDialog();

    // If accepted, update the ttester
    if (result == ListSelectorDialog.APPROVE_OPTION) {
        int[] selected = m_DatasetKeyList.getSelectedIndices();
        String selectedList = "";
        for (int i = 0; i < selected.length; i++) {
            selectedList += "," + (selected[i] + 1);
        }/*  w ww  .j a va2s.c  om*/
        Range generatorRange = new Range();
        if (selectedList.length() != 0) {
            try {
                generatorRange.setRanges(selectedList);
            } catch (Exception ex) {
                ex.printStackTrace();
                System.err.println(ex.getMessage());
            }
        }
        m_TTester.setDatasetKeyColumns(generatorRange);
        setTTester();
    }
}