Changeset 8623 for trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Classification/ThresholdCalculators
- Timestamp:
- 09/10/12 17:13:46 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Classification/ThresholdCalculators/NormalDistributionCutPointsThresholdCalculator.cs
r7259 r8623 107 107 double maxDensityClassValue = -1; 108 108 foreach (var classValue in originalClasses) { 109 double density = NormalDensity(m, classMean[classValue], classStdDev[classValue]);109 double density = LogNormalDensity(m, classMean[classValue], classStdDev[classValue]); 110 110 if (density > maxDensity) { 111 111 maxDensity = density; … … 139 139 } 140 140 141 private static double NormalDensity(double x, double mu, double sigma) { 142 if (sigma.IsAlmost(0.0)) { 143 if (x.IsAlmost(mu)) return 1.0; else return 0.0; 144 } else { 145 return (1.0 / Math.Sqrt(2.0 * Math.PI * sigma * sigma)) * Math.Exp(-((x - mu) * (x - mu)) / (2.0 * sigma * sigma)); 146 } 141 private static double LogNormalDensity(double x, double mu, double sigma) { 142 return -0.5 * Math.Log(2.0 * Math.PI * sigma * sigma) - ((x - mu) * (x - mu)) / (2.0 * sigma * sigma); 147 143 } 148 144
Note: See TracChangeset
for help on using the changeset viewer.