m_ResultMatrix.setCount(ii, pairedStats.count);
m_ResultMatrix.setCount(i, pairedStats.count);
  public String multiResultsetFull(int baseResultset,				   int comparisonColumn) throws Exception {    int maxWidthMean = 2;    int maxWidthStdDev = 2;        double[] sortValues = new double[getNumDatasets()];          // determine max field width    for (int i = 0; i < getNumDatasets(); i++) {      sortValues[i] = Double.POSITIVE_INFINITY;  // sorts skipped cols to end            for (int j = 0; j < getNumResultsets(); j++) {        if (!displayResultset(j))          continue;	try {	  PairedStats pairedStats = 	    calculateStatistics(m_DatasetSpecifiers.specifier(i), 				baseResultset, j, comparisonColumn);          if (!Double.isInfinite(pairedStats.yStats.mean) &&              !Double.isNaN(pairedStats.yStats.mean)) {            double width = ((Math.log(Math.abs(pairedStats.yStats.mean)) /                              Math.log(10))+1);            if (width > maxWidthMean) {              maxWidthMean = (int)width;            }          }          if (j == baseResultset) {            if (getSortColumn() != -1)              sortValues[i] = calculateStatistics(                                m_DatasetSpecifiers.specifier(i),                                 baseResultset, j, getSortColumn()).xStats.mean;            else              sortValues[i] = i;          }	  	  if (m_ShowStdDevs &&              !Double.isInfinite(pairedStats.yStats.stdDev) &&              !Double.isNaN(pairedStats.yStats.stdDev)) {	    double width = ((Math.log(Math.abs(pairedStats.yStats.stdDev)) /                              Math.log(10))+1);	    if (width > maxWidthStdDev) {	      maxWidthStdDev = (int)width;	    }	  }	}  catch (Exception ex) {	  //ex.printStackTrace();          System.err.println(ex);	}      }    }    // sort according to sort column    m_SortOrder = Utils.sort(sortValues);    // setup matrix    initResultMatrix();        m_ResultMatrix.setMeanWidth(maxWidthMean);    m_ResultMatrix.setStdDevWidth(maxWidthStdDev);    m_ResultMatrix.setSignificanceWidth(1);        // the data    for (int ii = 0; ii < getNumDatasets(); ii++) {      int i = m_SortOrder[ii];      m_ResultMatrix.setRowName(ii,           templateString(m_DatasetSpecifiers.specifier(i)));      for (int j = 0; j < getNumResultsets(); j++) {        try {          // calc stats          PairedStats pairedStats =             calculateStatistics(m_DatasetSpecifiers.specifier(i),                 baseResultset, j, comparisonColumn);          // count          m_ResultMatrix.setCount(ii, pairedStats.count);          // mean          m_ResultMatrix.setMean(j, ii, pairedStats.yStats.mean);                    // std dev          m_ResultMatrix.setStdDev(j, ii, pairedStats.yStats.stdDev);          // significance          if (pairedStats.differencesSignificance < 0)            m_ResultMatrix.setSignificance(j, ii, ResultMatrix.SIGNIFICANCE_WIN);          else if (pairedStats.differencesSignificance > 0)            m_ResultMatrix.setSignificance(j, ii, ResultMatrix.SIGNIFICANCE_LOSS);          else            m_ResultMatrix.setSignificance(j, ii, ResultMatrix.SIGNIFICANCE_TIE);        }        catch (Exception e) {          //e.printStackTrace();          System.err.println(e);        }      }    }    // generate output    StringBuffer result = new StringBuffer(1000);    try {      result.append(m_ResultMatrix.toStringMatrix());    }    catch (Exception e) {      e.printStackTrace();    }        // append a key so that we can tell the difference between long    // scheme+option names    result.append("\n\n" + m_ResultMatrix.toStringKey());    return result.toString();  }