If I have a set of samples, say 100-200 samples and I'd like to create the distribution model from this list of samples, what is a reasonably efficient way of doing it? Are there any opensource / easily accessible statistical libraries?
eg: if I assume it's a normal distribution, I can easily find the mean and variance and call it a day. However, the distribution might actually have non-negligible 3rd (skewness) or even 4th moment (Kurtosis) so my "assumption" is not very accurate. My gut feeling is this may work:
// assume samples already in samples float avg = CalculateAverage(samples); float variance = CalculateVariance(samples); float skewness = CalculateSkewness(samples); float kurtosis = CalculateKurtosis(samples); string definedBy = "average, variance"; if(skewness > skewThreshold) definedBy += ", skewness"; if(kurtosis > kurtosisThreshold) definedBy += ", kurtosis"; Console.Writeline("This distribution is defined by " + definedBy);
Q1: Will it achieve the purpose of classifying the distribution/creating the distribution model ?
Q2: What values of skewThreshold and kurtosisThreshold are reasonable?