Learn R Programming

distr (version 2.9.5)

Truncate-methods: Methods for function Truncate in Package `distr'

Description

Truncate-methods

Usage

Truncate(object, ...)
# S4 method for AbscontDistribution
Truncate(object, lower = -Inf, upper = Inf)
# S4 method for DiscreteDistribution
Truncate(object, lower= -Inf, upper = Inf)
# S4 method for LatticeDistribution
Truncate(object, lower= -Inf, upper = Inf)
# S4 method for UnivarLebDecDistribution
Truncate(object, lower = -Inf, upper = Inf, 
                    withSimplify = getdistrOption("simplifyD"))

Value

the corresponding distribution of the truncated random variable

Arguments

object

distribution object

...

not yet used; takes up lower, upper, withSimplify.

lower

numeric; lower truncation point

upper

numeric; upper truncation point

withSimplify

logical; is result to be piped through a call to simplifyD?

Methods

Truncate

signature(object = "AbscontDistribution"): returns the distribution of min(upper,max(X,lower)) conditioned to lower<=X<=upper, if X is distributed according to object; if slot .logExact of argument object is TRUE 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 slot r, 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 slots r,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 of min(upper,max(X,lower)) conditioned to lower<=X<=upper, if X is distributed according to object; the result is again of class "DiscreteDistribution"

Truncate

signature(object = "LatticeDistribution"): if length of the corresp. lattice is infinite and slot .logExact of argument object is TRUE, we proceed similarly as in case of AbscontDistribution, 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 of min(upper,max(X,lower)) conditioned to lower<=X<=upper, if X is distributed according to object; the result is again of class "UnivarLebDecDistribution"

See Also

Huberize, Minimum

Examples

Run this code
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)

Run the code above in your browser using DataLab