Dew Stats Master .NET
GammaFit Routines
Summary
Calculate parameters for Gamma distributed values.

Unit
Statistics

Declaration
Procedure GammaFit(X: TVec; out A, B: TSample; out PCIA, PCIB: TTwoElmReal; MaxIter: Integer = 500; Tolerance: TSample = 1e-8; alpha: TSample = 0.05);
 Parameter  Description 
Stores data which is assumed to be Gamma distributed. 
A,B Return Gamma distribution parameter estimators. 
MaxIter Maximum number of iterations needed for deriving a and b. 
Tolerance Defines the acceptable tolerance for calculating a and b. 
PCIA,PCIB a and b (1-Alpha)*100 percent confidence intervals. 
Alpha Confidence interval percentage. 

Description
Calculate parameters for Gamma distributed values.
Categories
Distribution parameters estimation
 See Also 
RandomGamma 
MVGamma 

Example 1

The following example generates 100 random Gamma distributed values and then uses GammaFit routine to extract used a and b parameters:

Uses StatRandom, Statistics, MtxExpr; procedure Example; var vec1: Vector; resA, resB : TSample; CIA,CIB: TTwoElmReal; begin // first, generate 1000 randomly gamma distributed // numbers with parameters a=0.5 and b =1.2 vec1.Size(1000); RandomGamma(0.5,1.2,vec1); // Now extract the a,b and their 95% confidence intervals. // Use at max 400 iterations and tolerance 0.0001 GammaFit(vec1,resA,resB,CIA,CIB,400,1e-4); end;
#include "StatRandom.hpp" #include "MtxVecCpp.h" #include "Statistics.hpp" void __fastcall Example(); { Vector vec1; // first, generate 1000 randomly gamma distributed // numbers with parameters a=0.5 and b =1.2 vec1->Size(1000,false); RandomGamma(0.5,1.2,vec1); // Now extract the a,b and their 95% confidence intervals. // Use at max 400 iterations and tolerance 0.0001 double resA, ResB; double CIA[2]; double CIB[2]; GammaFit(vec1,resA,resB,CIA,CIB,400,1e-4,0.05); }
using Dew.Math; using Dew.Stats; using Dew.Stats.Units; namespace Dew.Examples; { private void Example() { Vector vec1 = new Vector(0); // first, generate 1000 randomly gamma distributed // numbers with parameters a=0.5 and b =1.2 vec1.Size(1000,false); StatRandom.RandomGamma(0.5,1.2,vec1); // Now extract the a,b and their 95% confidence intervals. // Use at max 400 iterations and tolerance 0.0001 double resA, ResB; double[2] CIA; double[2] CIB; GammaFit(vec1,out resA,out resB,out CIA,out CIB,400,1e-4,0.05); } }



Declaration
Procedure GammaFit(X: TVec; out A, B: TSample; MaxIter: Integer = 500; Tolerance: TSample = 1e-8);

Copyright 2008 Dew Research
http://www.dewresearch.com