Truncatemethods {distr}  R Documentation 
Methods for function Truncate in Package ‘distr’
Description
Truncatemethods
Usage
Truncate(object, ...)
## S4 method for signature 'AbscontDistribution'
Truncate(object, lower = Inf, upper = Inf)
## S4 method for signature 'DiscreteDistribution'
Truncate(object, lower= Inf, upper = Inf)
## S4 method for signature 'LatticeDistribution'
Truncate(object, lower= Inf, upper = Inf)
## S4 method for signature 'UnivarLebDecDistribution'
Truncate(object, lower = Inf, upper = Inf,
withSimplify = getdistrOption("simplifyD"))
Arguments
object 
distribution object 
... 
not yet used; takes up 
lower 
numeric; lower truncation point 
upper 
numeric; upper truncation point 
withSimplify 
logical; is result to be piped through a call to

Value
the corresponding distribution of the truncated random variable
Methods
 Truncate
signature(object = "AbscontDistribution")
: returns the distribution ofmin(upper,max(X,lower))
conditioned tolower<=X<=upper
, ifX
is distributed according toobject
; if slot.logExact
of argumentobject
isTRUE
and if either there is only onesided truncation or both truncation points lie on the same side of the median, we use this representation to enhance the range of applicability, in particular, for slotr
, we profit from Peter Dalgaard's clever logtricks as indicated in https://stat.ethz.ch/pipermail/rhelp/2008September/174321.html. To this end we use the internal functions (i.e.; non exported to namespace).trunc.up
and.trunc.low
which provide functional slotsr,d,p,q
for onesided truncation. In case of two sided truncation, we simply use onesided truncation successively — first left and then right in case we are right of the median, and the other way round else; the result is again of class"AbscontDistribution"
; Truncate
signature(object = "DiscreteDistribution")
: returns the distribution ofmin(upper,max(X,lower))
conditioned tolower<=X<=upper
, ifX
is distributed according toobject
; the result is again of class"DiscreteDistribution"
 Truncate
signature(object = "LatticeDistribution")
: if length of the corresp.lattice
is infinite and slot.logExact
of argumentobject
isTRUE
, we proceed similarly as in case ofAbscontDistribution
, also using internal functions.trunc.up
and.trunc.low
; else we use the corresponding"DiscreteDistribution"
method; the result is again of class"LatticeDistribution"
 Truncate
signature(object = "UnivarLebDecDistribution")
: returns the distribution ofmin(upper,max(X,lower))
conditioned tolower<=X<=upper
, ifX
is distributed according toobject
; the result is again of class"UnivarLebDecDistribution"
See Also
Examples
plot(Truncate(Norm(),lower=1,upper=2))
TN < Truncate(Norm(),lower=15,upper=15.7) ### remarkably right!
plot(TN)
r(TN)(30)
TNG < Truncate(Geom(prob=0.05),lower=325,upper=329) ### remarkably right!
plot(TNG)