# Fits a Truncate Distribution from a gamlss.family

### Description

This function can be used to fit truncated distributions. It takes as an argument an existing GAMLSS family distribution and
a parameter vector, of the type c(left.value, right.value), and generates a `gamlss.family`

object which then can be used to fit
a truncated distribution.

### Usage

1 2 |

### Arguments

`par` |
a scalar for left and right truncation or a vector of the type c(left.value, right.value) for interval truncation |

`family` |
an existing |

`type` |
what type of truncation is required, |

`name` |
a character string to be added to name of the created object i.e. with |

`local` |
if TRUE the function will try to find the environment of |

`delta` |
the delta increment used in the numerical derivatives |

`...` |
for extra arguments |

### Details

This function is created to help the user to fit a truncated form of existing `gamlss`

distribution.
It does this by taking an existing `gamlss.family`

and changing some of the components of the distribution to help the fitting process.
It particular it i) creates a pdf (`d`

) and a cdf (`p`

) function within `gamlss`

,
ii) changes the global deviance function `G.dev.incr`

, the first derivative functions (see note below) and the quantile residual function.

### Value

It returns a `gamlss.family`

object which has all the components needed for fitting a distribution in `gamlss`

.

### Note

This function is experimental and could be changed. The function `trun`

changes
the first derivatives of the original gamlss family `d`

function to numerical derivatives
for the new truncated `d`

function. The default increment `delta`

,
for this numerical derivatives function, is `eps * pmax(abs(x), 1)`

where
`eps<-sqrt(.Machine$double.eps)`

. The default `delta`

could be inappropriate
for specific applications and can be overwritten by using the argument `delta`

.

### Author(s)

Mikis Stasinopoulos d.stasinopoulos@londonmet.ac.uk and Bob Rigby r.rigby@londonmet.ac.uk

### References

Rigby, R. A. and Stasinopoulos D. M. (2005). Generalized additive models for location, scale and shape,(with discussion),
*Appl. Statist.*, **54**, part 3, pp 507-554.

Stasinopoulos D. M., Rigby R.A. and Akantziliotou C. (2003) Instructions on how to use the GAMLSS package in R. Accompanying documentation in the current GAMLSS help files, (see also http://www.gamlss.com/).

### See Also

`trun.d`

, `trun.p`

, `trun.q`

, `trun.r`

, `gen.trun`

### Examples

1 2 3 4 5 6 7 8 9 10 11 12 13 14 | ```
# generate a left truncated zero t family
gen.trun(0,family="TF")
# take a random sample of 1000 observations
sam<-rTFtr(1000,mu=10,sigma=5, nu=5 )
hist(sam)
# fit the distribution to the data
mod1<-gamlss(sam~1, family=trun(0,TF))
mod1
# now create a gamlss.family object before the fitting
Ttruc.Zero<- trun(par=0,family=TF, local=FALSE)
mod2<-gamlss(sam~1, family=Ttruc.Zero)
# now check the sensitivity of delta
Ttruc.Zero<- trun(par=0,family=TF, local=FALSE, delta=c(0.01,0.01, 0.01))
mod3<-gamlss(sam~1, family=Ttruc.Zero)
``` |