Truncate(object, ...)
"Truncate"(object, lower = -Inf, upper = Inf)
"Truncate"(object, lower= -Inf, upper = Inf)
"Truncate"(object, lower= -Inf, upper = Inf)
"Truncate"(object, lower = -Inf, upper = Inf, withSimplify = getdistrOption("simplifyD"))lower,
upper, withSimplify.simplifyD?signature(object = "AbscontDistribution"):
returns the distribution of min(upper,max(X,lower))
conditioned to lower<=x<=upper< code="">, 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
http://article.gmane.org/gmane.comp.lang.r.general/126112. 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";
=x<=upper<>signature(object = "DiscreteDistribution"):
returns the distribution of min(upper,max(X,lower))
conditioned to lower<=x<=upper< code="">, if X is
distributed according to object;
the result is again of class "DiscreteDistribution"=x<=upper<>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"signature(object = "UnivarLebDecDistribution"):
returns the distribution of min(upper,max(X,lower))
conditioned to lower<=x<=upper< code="">, if X is
distributed according to object;
the result is again of class "UnivarLebDecDistribution"=x<=upper<>Huberize, Minimumplot(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