Documentation
¶
Overview ¶
Package analysis provides statistical analysis for benchmark results.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BootstrapResult ¶
type BootstrapResult struct {
MeanDiff float64
LowerBound float64
UpperBound float64
Confidence float64 // e.g., 0.95 for 95% CI.
}
BootstrapCI computes a bootstrap confidence interval for the mean difference.
func BootstrapConfidenceInterval ¶
func BootstrapConfidenceInterval(sample1, sample2 []float64, iterations int, confidence float64) *BootstrapResult
BootstrapConfidenceInterval computes a confidence interval using bootstrap.
type DescriptiveStats ¶
type DescriptiveStats struct {
N int
Mean float64
Median float64
StdDev float64
Min float64
Max float64
P25 float64
P75 float64
}
DescriptiveStats contains basic descriptive statistics.
func Describe ¶
func Describe(sample []float64) *DescriptiveStats
Describe computes descriptive statistics for a sample.
type EffectSize ¶
type EffectSize struct {
CohensD float64 // Cohen's d: (mean1 - mean2) / pooled_std.
Interpretation string // "negligible", "small", "medium", "large".
}
EffectSize contains effect size metrics.
func ComputeEffectSize ¶
func ComputeEffectSize(sample1, sample2 []float64) *EffectSize
ComputeEffectSize computes Cohen's d effect size.
type MannWhitneyResult ¶
type MannWhitneyResult struct {
U float64 // U statistic.
Z float64 // Z score (normal approximation).
PValue float64 // Two-tailed p-value.
Significant bool // True if p < 0.05.
}
MannWhitneyResult contains the result of a Mann-Whitney U test.
func MannWhitneyU ¶
func MannWhitneyU(sample1, sample2 []float64) *MannWhitneyResult
MannWhitneyU performs the Mann-Whitney U test on two samples. This is a non-parametric test to determine if two samples come from different distributions.
type MultiStrategyComparison ¶
type MultiStrategyComparison struct {
Baseline string
Comparisons []*StrategyComparison
}
MultiStrategyComparison compares multiple strategies against a baseline.
func CompareAll ¶
func CompareAll( results map[string]*simulation.AggregateResult, baseline string, bootstrapIterations int, confidence float64, ) *MultiStrategyComparison
CompareAll compares all strategies against the first one (baseline).
type StrategyComparison ¶
type StrategyComparison struct {
Strategy1 string
Strategy2 string
Stats1 *DescriptiveStats
Stats2 *DescriptiveStats
MannWhitney *MannWhitneyResult
EffectSize *EffectSize
BootstrapCI *BootstrapResult
Winner string // Name of strategy with fewer switches, or "tie".
WinnerConfident bool // True if statistically significant.
}
StrategyComparison contains a full statistical comparison between two strategies.
func CompareStrategies ¶
func CompareStrategies( result1, result2 *simulation.AggregateResult, bootstrapIterations int, confidence float64, ) *StrategyComparison
CompareStrategies performs a full statistical comparison between two strategies.
func (*StrategyComparison) Summary ¶
func (c *StrategyComparison) Summary() string
Summary returns a human-readable summary of the comparison.