private static CoefficientCharacteristic CalculatePairCorrelationCoefficient() { CoefficientCharacteristic pairCoefficientCharacteristic = new CoefficientCharacteristic(); pairCoefficientCharacteristic.name = "Pair coefficient characteristic"; pairCoefficientCharacteristic.value = CorrelationField.CalculatePairCorrelationValue(); pairCoefficientCharacteristic.statistic = CorrelationField.CalculatePairCorrelationStatistics(ref pairCoefficientCharacteristic.value); pairCoefficientCharacteristic.quantil = QuantilCalculator.StudentQuantil((1.0 - (alpha / 2)), (CorrelationField.GetCorrelationFieldList().Count() - 1)); pairCoefficientCharacteristic.valuability = CorrelationField.DoesAddictionExists(ref pairCoefficientCharacteristic.statistic, ref pairCoefficientCharacteristic.quantil); if (pairCoefficientCharacteristic.valuability) { pairCoefficientCharacteristic.confidenceInterval = CorrelationField.CalculatePairCorrelationInterval(ref pairCoefficientCharacteristic.value); } else { pairCoefficientCharacteristic.confidenceInterval = new Interval(0, 0); } return pairCoefficientCharacteristic; }
private static CoefficientCharacteristic CalculateSpearmanCoefficient() { CoefficientCharacteristic spearmanCoefficientCharacteristic = new CoefficientCharacteristic(); spearmanCoefficientCharacteristic.name = "Spearman coefficient"; List<CorrelationFieldCell> spearmanList = CorrelationField.GetCorrelationFieldList(); List<double> x_AmountOfValuesAtBunches = SetRanksForX(ref spearmanList); List<double> y_AmountOfValuesAtBunches = SetRanksForY(ref spearmanList); spearmanList = spearmanList.OrderBy(value => value.RankX).ToList(); if ((x_AmountOfValuesAtBunches.Count != 0) || (y_AmountOfValuesAtBunches.Count != 0)) { spearmanCoefficientCharacteristic.value = CalculateSpearmanCoefficientValue_WithBunches(ref spearmanList, x_AmountOfValuesAtBunches, y_AmountOfValuesAtBunches); spearmanCoefficientCharacteristic.value = Math.Round(spearmanCoefficientCharacteristic.value, 5); } else { spearmanCoefficientCharacteristic.value = CalculateSpearmanCoefficientValue_WithoutBunches(ref spearmanList); spearmanCoefficientCharacteristic.value = Math.Round(spearmanCoefficientCharacteristic.value, 5); } spearmanCoefficientCharacteristic.statistic = CalculateSpearmanStatistics(ref spearmanCoefficientCharacteristic.value); spearmanCoefficientCharacteristic.quantil = QuantilCalculator.StudentQuantil((1.0 - (alpha / 2)), (CorrelationField.GetCorrelationFieldList().Count() - 1)); ; spearmanCoefficientCharacteristic.valuability = CorrelationField.DoesAddictionExists(ref spearmanCoefficientCharacteristic.statistic, ref spearmanCoefficientCharacteristic.quantil); spearmanCoefficientCharacteristic.confidenceInterval = new Interval(0, 0); return spearmanCoefficientCharacteristic; }
private static CoefficientCharacteristic CalculateCorrelationRatio() { CoefficientCharacteristic correlationRatioCharacteristic = new CoefficientCharacteristic(); correlationRatioCharacteristic.name = "Correlation ratio"; correlationRatioCharacteristic.value = CorrelationField.CalculateCorrelationRatioValue(); correlationRatioCharacteristic.statistic = CorrelationField.CalculateCorrelationRatioStatistics(); correlationRatioCharacteristic.quantil = QuantilCalculator.FisherQuantil(1.0 - alpha, amountOfClasses - 1, correlationFieldList.Count - amountOfClasses); correlationRatioCharacteristic.valuability = CorrelationField.DoesAddictionExists(ref correlationRatioCharacteristic.statistic, ref correlationRatioCharacteristic.quantil); correlationRatioCharacteristic.confidenceInterval = new Interval(0, 0); return correlationRatioCharacteristic; }
private static CoefficientCharacteristic CalculateKendallCoefficient() { CoefficientCharacteristic kendallCoefficientCharacteristic = new CoefficientCharacteristic(); kendallCoefficientCharacteristic.name = "Kendall coefficient"; List<CorrelationFieldCell> kendallList = CorrelationField.GetCorrelationFieldList(); List<double> x_AmountOfValuesAtBunches = SetRanksForX(ref kendallList); List<double> y_AmountOfValuesAtBunches = SetRanksForY(ref kendallList); kendallList = kendallList.OrderBy(value => value.X).ToList(); if ((x_AmountOfValuesAtBunches.Count != 0) || (y_AmountOfValuesAtBunches.Count != 0)) { kendallCoefficientCharacteristic.value = CalculateKendallCoefficientValue_WithBunches(ref kendallList, x_AmountOfValuesAtBunches, y_AmountOfValuesAtBunches); kendallCoefficientCharacteristic.value = Math.Round(kendallCoefficientCharacteristic.value, 5); } else { kendallCoefficientCharacteristic.value = CalculateKendallCoefficientValue_WithoutBunches(ref kendallList); kendallCoefficientCharacteristic.value = Math.Round(kendallCoefficientCharacteristic.value, 5); } kendallCoefficientCharacteristic.statistic = CalculateKendallStatistics(ref kendallCoefficientCharacteristic.value); kendallCoefficientCharacteristic.quantil = QuantilCalculator.NormalQuantil(1.0 - alpha / 2.0); kendallCoefficientCharacteristic.valuability = CorrelationField.DoesAddictionExists(ref kendallCoefficientCharacteristic.statistic, ref kendallCoefficientCharacteristic.quantil); kendallCoefficientCharacteristic.confidenceInterval = new Interval(0, 0); return kendallCoefficientCharacteristic; }