Calcite | Level 5

## Integration of a function including Chi-square

I want to integral this function (1-chi-square(x/2,df=10))**5 by the chi-square(x, df=10), so I write the code below. However, the error showed up. Can any one help me solve this problem?

Proc iml;

start integrand(probchi(x,10));

return ((1-probchi((x/2),10))**5);

finish;

quit;

1 ACCEPTED SOLUTION

Accepted Solutions
SAS Super FREQ

## Re: Integration of a function including Chi-square

So that we can all use the same terminology, please review "The four essential functions for statistical programmers."

For the chi-square distribution, the CDF at x is the integral of the PDF from 0 to x. It looks like you want your integrand to be

(1 - CDF("ChiSq", x, 10))**5, and the domain of integration to be [0, infinity).

If so, then your code is almost right. Just a slight modification of the calling syntax (and I use CDF instead of PROBCHI):

``````proc iml;
start integrand(x);
return (1-cdf("ChiSq", x/2,10))##5 ;
finish;
5 REPLIES 5
SAS Super FREQ

## Re: Integration of a function including Chi-square

So that we can all use the same terminology, please review "The four essential functions for statistical programmers."

For the chi-square distribution, the CDF at x is the integral of the PDF from 0 to x. It looks like you want your integrand to be

(1 - CDF("ChiSq", x, 10))**5, and the domain of integration to be [0, infinity).

If so, then your code is almost right. Just a slight modification of the calling syntax (and I use CDF instead of PROBCHI):

``````proc iml;
start integrand(x);
return (1-cdf("ChiSq", x/2,10))##5 ;
finish;
Calcite | Level 5

## Re: Integration of a function including Chi-square

Thank you! Yes, this is very helpful. But I want the "Integrand (CDF("ChiSq", x/2, 10))" instead of Integrand (x)). In other word, I want "dCDF("ChiSq", x/2, 10)" instead of "dx". How should I do that?

SAS Super FREQ

## Re: Integration of a function including Chi-square

Sorry, but I don't understand your notation.  I don't know what "dCDF" means, unless you mean PDF, which is the derivative of the CDF.

The Integrand function evaluates a function at a value of x. It returns a number. The QUAD function integrates that function on a (possibly infinite) interval. It returns the definite integral of the function on the interval.

Super User

## Re: Integration of a function including Chi-square

```Maybe you should calculated it by hand firstly.
Assuming CDF("ChiSq", x/2, 10)= e^x , then
dCDF("ChiSq", x/2, 10)= e^x * dx

```
SAS Super FREQ

## Re: Integration of a function including Chi-square

If F(x) is the cumulative distribution function and f(x) is the associated density, then one iterpretation of "dCDF" is

dF = dF/dx * dx = f(x) dx

which is why I suggested using the PDF function.

However, if the argument to F is itself a function of x, say u(x), then make sure you use the chain rule. For example, if the argument is u(x) then

d(F(u(x)) = dF/du * du/dx * dx = f(u(x)) * u`(x) dx

From The DO Loop