use of cern.jet.random.Normal in project tetrad by cmu-phil.
the class NormalityTests method cramerVonMises.
/**
* Calculates the Cramer-von-Mises statistic for a variable
*
* @param dataSet relevant data set
* @param variable continuous variable whose normality is in question
*
* @return Cramer-von-Mises statistic
*/
public static double cramerVonMises(DataSet dataSet, ContinuousVariable variable) {
int n = dataSet.getNumRows();
int columnIndex = dataSet.getColumn(variable);
Normal idealDistribution = getNormal(dataSet, variable);
double cvmStatistic = 0.0;
for (int i = 1; i <= n; i++) {
double summedTerm = (((2 * i) - 1) / (2 * n)) - idealDistribution.cdf(dataSet.getDouble(i - 1, columnIndex));
summedTerm *= summedTerm;
cvmStatistic += summedTerm;
}
cvmStatistic += 1 / (12 * n);
cvmStatistic /= n;
return cvmStatistic;
}
use of cern.jet.random.Normal in project tetrad by cmu-phil.
the class NormalityTests method getNormal.
/**
* Generates an ideal Normal distribution for some variable.
*
* @return Ideal Normal distribution for a variable.
*/
private static Normal getNormal(DataSet dataSet, Variable variable) {
double[] paramsForNormal = normalParams(dataSet, variable);
double mean = paramsForNormal[0];
double sd = paramsForNormal[1];
return new Normal(mean, sd, new MersenneTwister());
}
use of cern.jet.random.Normal in project tetrad by cmu-phil.
the class DescriptiveStats method getNormal.
/**
* Generates an ideal Normal distribution for some variable.
*
* @return Ideal Normal distribution for a variable.
*/
public static Normal getNormal(double[] data) {
double[] paramsForNormal = normalParams(data);
double mean = paramsForNormal[0];
double sd = paramsForNormal[1];
return new Normal(mean, sd, new MersenneTwister());
}
Aggregations