You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by tn...@apache.org on 2012/02/02 21:16:37 UTC
svn commit: r1239802 - in
/commons/proper/math/trunk/src/main/java/org/apache/commons/math/stat/correlation:
PearsonsCorrelation.java SpearmansCorrelation.java
Author: tn
Date: Thu Feb 2 20:16:36 2012
New Revision: 1239802
URL: http://svn.apache.org/viewvc?rev=1239802&view=rev
Log:
Changed deprecated MathRuntimeException in package stat.correlation
JIRA: MATH-459
Modified:
commons/proper/math/trunk/src/main/java/org/apache/commons/math/stat/correlation/PearsonsCorrelation.java
commons/proper/math/trunk/src/main/java/org/apache/commons/math/stat/correlation/SpearmansCorrelation.java
Modified: commons/proper/math/trunk/src/main/java/org/apache/commons/math/stat/correlation/PearsonsCorrelation.java
URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/main/java/org/apache/commons/math/stat/correlation/PearsonsCorrelation.java?rev=1239802&r1=1239801&r2=1239802&view=diff
==============================================================================
--- commons/proper/math/trunk/src/main/java/org/apache/commons/math/stat/correlation/PearsonsCorrelation.java (original)
+++ commons/proper/math/trunk/src/main/java/org/apache/commons/math/stat/correlation/PearsonsCorrelation.java Thu Feb 2 20:16:36 2012
@@ -16,10 +16,9 @@
*/
package org.apache.commons.math.stat.correlation;
-import org.apache.commons.math.MathException;
-import org.apache.commons.math.MathRuntimeException;
import org.apache.commons.math.distribution.TDistribution;
import org.apache.commons.math.exception.util.LocalizedFormats;
+import org.apache.commons.math.exception.MathIllegalArgumentException;
import org.apache.commons.math.exception.NullArgumentException;
import org.apache.commons.math.exception.DimensionMismatchException;
import org.apache.commons.math.linear.RealMatrix;
@@ -158,9 +157,10 @@ public class PearsonsCorrelation {
* <i>significance</i> of the corresponding correlation coefficients.</p>
*
* @return matrix of p-values
- * @throws MathException if an error occurs estimating probabilities
+ * @throws org.apache.commons.math.exception.MaxCountExceededException
+ * if an error occurs estimating probabilities
*/
- public RealMatrix getCorrelationPValues() throws MathException {
+ public RealMatrix getCorrelationPValues() {
TDistribution tDistribution = new TDistribution(nObs - 2);
int nVars = correlationMatrix.getColumnDimension();
double[][] out = new double[nVars][nVars];
@@ -221,16 +221,16 @@ public class PearsonsCorrelation {
* @param xArray first data array
* @param yArray second data array
* @return Returns Pearson's correlation coefficient for the two arrays
- * @throws IllegalArgumentException if the arrays lengths do not match or
- * there is insufficient data
+ * @throws DimensionMismatchException if the arrays lengths do not match
+ * @throws MathIllegalArgumentException if there is insufficient data
*/
- public double correlation(final double[] xArray, final double[] yArray) throws IllegalArgumentException {
+ public double correlation(final double[] xArray, final double[] yArray) {
SimpleRegression regression = new SimpleRegression();
if (xArray.length != yArray.length) {
throw new DimensionMismatchException(xArray.length, yArray.length);
} else if (xArray.length < 2) {
- throw MathRuntimeException.createIllegalArgumentException(
- LocalizedFormats.INSUFFICIENT_DIMENSION, xArray.length, 2);
+ throw new MathIllegalArgumentException(LocalizedFormats.INSUFFICIENT_DIMENSION,
+ xArray.length, 2);
} else {
for(int i=0; i<xArray.length; i++) {
regression.addData(xArray[i], yArray[i]);
@@ -271,14 +271,14 @@ public class PearsonsCorrelation {
* two columns and two rows
*
* @param matrix matrix to check for sufficiency
+ * @throws MathIllegalArgumentException if there is insufficient data
*/
private void checkSufficientData(final RealMatrix matrix) {
int nRows = matrix.getRowDimension();
int nCols = matrix.getColumnDimension();
if (nRows < 2 || nCols < 2) {
- throw MathRuntimeException.createIllegalArgumentException(
- LocalizedFormats.INSUFFICIENT_ROWS_AND_COLUMNS,
- nRows, nCols);
+ throw new MathIllegalArgumentException(LocalizedFormats.INSUFFICIENT_ROWS_AND_COLUMNS,
+ nRows, nCols);
}
}
}
Modified: commons/proper/math/trunk/src/main/java/org/apache/commons/math/stat/correlation/SpearmansCorrelation.java
URL: http://svn.apache.org/viewvc/commons/proper/math/trunk/src/main/java/org/apache/commons/math/stat/correlation/SpearmansCorrelation.java?rev=1239802&r1=1239801&r2=1239802&view=diff
==============================================================================
--- commons/proper/math/trunk/src/main/java/org/apache/commons/math/stat/correlation/SpearmansCorrelation.java (original)
+++ commons/proper/math/trunk/src/main/java/org/apache/commons/math/stat/correlation/SpearmansCorrelation.java Thu Feb 2 20:16:36 2012
@@ -17,7 +17,8 @@
package org.apache.commons.math.stat.correlation;
-import org.apache.commons.math.MathRuntimeException;
+import org.apache.commons.math.exception.DimensionMismatchException;
+import org.apache.commons.math.exception.MathIllegalArgumentException;
import org.apache.commons.math.exception.util.LocalizedFormats;
import org.apache.commons.math.linear.BlockRealMatrix;
import org.apache.commons.math.linear.RealMatrix;
@@ -135,23 +136,18 @@ public class SpearmansCorrelation {
/**
* Computes the Spearman's rank correlation coefficient between the two arrays.
*
- * </p>Throws IllegalArgumentException if the arrays do not have the same length
- * or their common length is less than 2</p>
- *
* @param xArray first data array
* @param yArray second data array
* @return Returns Spearman's rank correlation coefficient for the two arrays
- * @throws IllegalArgumentException if the arrays lengths do not match or
- * there is insufficient data
+ * @throws DimensionMismatchException if the arrays lengths do not match
+ * @throws MathIllegalArgumentException if the array length is less than 2
*/
- public double correlation(final double[] xArray, final double[] yArray)
- throws IllegalArgumentException {
+ public double correlation(final double[] xArray, final double[] yArray) {
if (xArray.length != yArray.length) {
- throw MathRuntimeException.createIllegalArgumentException(
- LocalizedFormats.DIMENSIONS_MISMATCH_SIMPLE, xArray.length, yArray.length);
+ throw new DimensionMismatchException(xArray.length, yArray.length);
} else if (xArray.length < 2) {
- throw MathRuntimeException.createIllegalArgumentException(
- LocalizedFormats.INSUFFICIENT_DIMENSION, xArray.length, 2);
+ throw new MathIllegalArgumentException(LocalizedFormats.INSUFFICIENT_DIMENSION,
+ xArray.length, 2);
} else {
return new PearsonsCorrelation().correlation(rankingAlgorithm.rank(xArray),
rankingAlgorithm.rank(yArray));