List of usage examples for weka.core Range setRanges
public void setRanges(String rangeList)
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(); } }