Examples - pi.science.distribution.PICHISquareDistribution
1. How to compute chi-squares distribution propability for X (degree of freedom=1) ?
PICHISquareDistribution distribution = new PICHISquareDistribution(); /* DF=1 */ distribution.SetDF( 1 ); Console.WriteLine( "Probability for x=0.0, df=1 : " + distribution.GetProbability( 0.0 ) ); Console.WriteLine( "Probability for x=0.001, df=1 : " + distribution.GetProbability( 0.001 ) ); Console.WriteLine( "Probability for x=2.706, df=1 : " + distribution.GetProbability( 2.706 ) ); Console.WriteLine( "Probability for x=5.024, df=1 : " + distribution.GetProbability( 5.024 ) ); Console.WriteLine( "Probability for x=200, df=1 : " + distribution.GetProbability( 200 ) );
Output:
Probability for x=0.0, df=1 : 1 Probability for x=0.001, df=1 : 0,974772879658012 Probability for x=2.706, df=1 : 0,0999713776670204 Probability for x=5.024, df=1 : 0,0249983579347677 Probability for x=200, df=1 : 1
2. How to compute X for chi-squares distribution propability ?
PICHISquareDistribution distribution = new PICHISquareDistribution(); /* DF=1 */ distribution.SetDF( 1 ); Console.WriteLine( "X for probability=1.0, df=1 : " + distribution.GetXForProbability( 1.0 ) ); Console.WriteLine( "X for probability=0.975, df=1 : " + distribution.GetXForProbability( 0.975 ) ); Console.WriteLine( "X for probability=0.1, df=1 : " + distribution.GetXForProbability( 0.1 ) ); Console.WriteLine( "X for probability=0.025, df=1 : " + distribution.GetXForProbability( 0.025 ) );
Output:
X for probability=1.0, df=1 : 0 X for probability=0.975, df=1 : 0,000982359051704407 X for probability=0.1, df=1 : 2,70554311573505 X for probability=0.025, df=1 : 5,02388589084148
3. How to compute chi-squares probability density for X (=curve points) ?
PICHISquareDistribution distribution = new PICHISquareDistribution(); /* DF=1 */ distribution.SetDF( 1 ); Console.WriteLine( "x=0.5 : " + distribution.CalcProbabilityDensity( 0.5 ) ); Console.WriteLine( "x=0.7 : " + distribution.CalcProbabilityDensity( 0.7 ) ); Console.WriteLine( "x=2.0 : " + distribution.CalcProbabilityDensity( 2.0 ) ); Console.WriteLine( "x=7.0 : " + distribution.CalcProbabilityDensity( 7.0 ) );
Output:
x=0.5 : 0,439391289467722 x=0.7 : 0,33601446772677 x=2.0 : 0,103776874355149 x=7.0 : 0,00455334292164017