Chi Square Distribution Class
Definition
Assembly: Numerics.NET (in Numerics.NET.dll) Version: 9.0.7
[SerializableAttribute]
public class ChiSquareDistribution : ContinuousDistribution
- Inheritance
- Object → Distribution → ContinuousDistribution → ChiSquareDistribution
Remarks
The chi-squared distribution is a continuous probability distribution that is widely used in statistical significance testing. It is defined by the degrees of freedom parameter, which is typically a positive integer.
The sum of the squares of n independent normal variables with zero mean and unit variance has a chi-squared distribution with n degrees of freedom. This means it also describes the Variance of samples taken from a normal distribution.
From this last property, we can see the usefulness of the chi-squared distribution as a test of statistical significance. We can determine the likelihood of obtaining a sample that deviates from the expected value by a specified amount.
The sum of two or more variables that have a chi-squared distribution also has a chi-squared distribution. The number of degrees of freedom of the new distribution equals the sum of the degrees of freedom of the original distributions.
Applications of the chi-squared distribution include hypothesis testing, particularly the chi-squared test for independence and the chi-squared test for goodness of fit.
Example
This example demonstrates creating a chi-squared distribution with 3 degrees of freedom, and then using its properties and methods to compute and display various values.
// Example of using the ChiSquareDistribution class
using System;
using Numerics.NET.Statistics.Distributions;
// Create a chi-squared distribution with 3 degrees of freedom
var chiSquare = new ChiSquareDistribution(3);
// Distribution parameters
Console.WriteLine($"Degrees of Freedom: {chiSquare.DegreesOfFreedom}");
// Distribution functions
double x = 2.0;
Console.WriteLine($"CDF at x={x}: {chiSquare.DistributionFunction(x)}");
Console.WriteLine($"PDF at x={x}: {chiSquare.ProbabilityDensityFunction(x)}");
// Moments
Console.WriteLine($"Mean: {chiSquare.Mean}");
Console.WriteLine($"Variance: {chiSquare.Variance}");
// Other properties
Console.WriteLine($"Mode: {chiSquare.Mode}");
Console.WriteLine($"Support: {chiSquare.Support}");
Constructors
Chi | Constructs a new Chi Squared distribution. |
Properties
Capabilities |
Gets a value that indicates the capabilities of the distribution class.
(Inherited from Distribution) |
Degrees | Gets the degrees of freedom for this chi-square distribution. |
Entropy |
Gets the entropy of the distribution.
(Overrides Distribution.Entropy) |
Inter |
Returns the inter-quartile range of this distribution.
(Inherited from ContinuousDistribution) |
IsSymmetrical |
Gets whether the distribution is known to be symmetrical around the mean.
(Inherited from ContinuousDistribution) |
IsUnimodal |
Gets whether the distribution has one or more modes.
(Inherited from ContinuousDistribution) |
Kurtosis |
Gets the kurtosis of the distribution.
(Overrides Distribution.Kurtosis) |
Mean |
Gets the mean or expectation value of the distribution.
(Overrides Distribution.Mean) |
Median |
Gets the median of the distribution.
(Inherited from ContinuousDistribution) |
Mode |
Gets the mode of the distribution.
(Overrides ContinuousDistribution.Mode) |
Number |
Gets the number of modes of the distribution.
(Inherited from ContinuousDistribution) |
Skewness |
Gets the skewness of the distribution.
(Overrides Distribution.Skewness) |
Standard |
Gets the standard deviation of the distribution.
(Inherited from Distribution) |
Statistic |
Gets the common symbol to describe a statistic
from the distribution.
(Overrides Distribution.StatisticSymbol) |
Support |
Gets the support of the distribution.
(Overrides ContinuousDistribution.Support) |
Variance |
Gets the variance of the distribution.
(Overrides Distribution.Variance) |
Methods
Cdf( |
Evaluates the cumulative distribution function
(CDF) of this distribution for the specified value.
(Inherited from ContinuousDistribution) |
Cdf( | Evaluates the cumulative distribution function (CDF) of this distribution for the specified value. |
Distribution |
Evaluates the cumulative distribution function
(CDF) of this distribution for the specified value.
(Overrides ContinuousDistribution.DistributionFunction(Double)) |
Distribution | Evaluates the cumulative distribution function (CDF) of this distribution for the specified value. |
Equals | Determines whether the specified object is equal to the current object. (Inherited from Object) |
Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object) |
Get |
Returns an array that contains all the modes of the distribution.
(Inherited from ContinuousDistribution) |
Get |
Returns the expectation value of a function.
(Inherited from ContinuousDistribution) |
Get |
Returns the un-normalized expectation value of a function over the specified interval.
(Inherited from ContinuousDistribution) |
Get |
Gets a vector containing a histogram of the expected number of samples
for a given total number of samples.
(Inherited from ContinuousDistribution) |
Get |
Gets a vector containing a histogram of the expected number of samples
for a given total number of samples.
(Inherited from ContinuousDistribution) |
Get |
Gets a vector whose bins contain the expected number of samples
for a given total number of samples.
(Inherited from ContinuousDistribution) |
Get | Serves as the default hash function. (Inherited from Object) |
Get |
Returns a sequence of random samples from the distribution.
(Inherited from ContinuousDistribution) |
Get |
Returns a sequence of random samples from the distribution.
(Inherited from ContinuousDistribution) |
Get |
Returns a sequence of random samples of the specified length from the distribution.
(Inherited from ContinuousDistribution) |
Get | Gets the Type of the current instance. (Inherited from Object) |
Hazard |
Returns the probability of failure at the specified value.
(Inherited from ContinuousDistribution) |
Inverse |
Returns the inverse of the DistributionFunction(Double).
(Inherited from ContinuousDistribution) |
Inverse | Returns the inverse of the DistributionFunction(Double). |
Inverse |
Returns the inverse of the DistributionFunction(Double).
(Overrides ContinuousDistribution.InverseDistributionFunction(Double)) |
Inverse | Returns the inverse of the DistributionFunction(Double). |
Left |
Returns the probability that a sample from the distribution
is less than the specified value.
(Inherited from ContinuousDistribution) |
Log |
Returns the logarithm of the probability density function
(PDF) of this distribution for the specified value.
(Inherited from ContinuousDistribution) |
Memberwise | Creates a shallow copy of the current Object. (Inherited from Object) |
Moment |
Returns the value of the moment function of the specified order.
(Overrides ContinuousDistribution.MomentFunction(Int32, Double)) |
Returns the value of the probability density function
(PDF) of this distribution for the specified value.
(Inherited from ContinuousDistribution) | |
Probability |
Returns the probability that a sample taken from the
distribution lies inside the specified interval.
(Inherited from ContinuousDistribution) |
Probability |
Returns the value of the probability density function
(PDF) of this distribution for the specified value.
(Overrides ContinuousDistribution.ProbabilityDensityFunction(Double)) |
Right |
Returns the probability that a sample from the distribution
is larger than the specified value.
(Inherited from ContinuousDistribution) |
Sample() |
Returns a random sample from the distribution.
(Inherited from ContinuousDistribution) |
Sample( |
Returns a vector of random samples from the distribution.
(Inherited from ContinuousDistribution) |
Sample( |
Returns a random sample from the distribution.
(Inherited from ContinuousDistribution) |
Sample( |
Returns a vector of random samples from the distribution.
(Inherited from ContinuousDistribution) |
Sample( | Returns a single random sample from a chi square distribution with the specified degrees of freedom. |
Sample |
Fills a list with random numbers from the distribution.
(Inherited from ContinuousDistribution) |
Sample |
Fills a list with random numbers from the distribution.
(Inherited from ContinuousDistribution) |
Sample |
Fills a span with random numbers from the distribution.
(Inherited from ContinuousDistribution) |
Sample |
Fills part of a list with random numbers from the distribution.
(Inherited from ContinuousDistribution) |
Survivor |
Evaluates the survivor distribution function
(SDF) of this distribution for the specified value.
(Overrides ContinuousDistribution.SurvivorDistributionFunction(Double)) |
ToString | Returns a string that represents the current object. (Overrides Object.ToString()) |
Two |
Returns the probability that a sample from the distribution deviates from the mean more than
the specified value.
(Inherited from ContinuousDistribution) |