Truncate-methods {distr} | R Documentation |
Methods for function Truncate in Package ‘distr’
Description
Truncate-methods
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 one-sided 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 log-tricks as indicated in https://stat.ethz.ch/pipermail/r-help/2008-September/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 one-sided truncation. In case of two sided truncation, we simply use one-sided 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)