R/order_tessg.R

Defines functions order_tessg

Documented in order_tessg

#' Random Sampling of k-th Order Statistics from a Truncated-Exponential Skew-Symmetric G Distribution
#'
#'\code{order_tessg} is used to obtain a random sample of the k-th order statistic from a Truncated-Exponential Skew-Symmetric G distribution.
#' @param size numeric, represents the size of the sample.
#' @param spec character, represents an specific G distribution. Possible values "norm", "exp","lnorm","chisq".
#' @param lambda numeric, represents the skewness parameter. Default value is 1.
#' @param k numeric, represents the Kth smallest value from a sample.
#' @param n numeric, represents the size of the sample to compute the order statistic from.
#' @param alpha numeric, (1 - alpha) represents the confidence of an interval for the population median of the distribution of the k-th order statistic. Default value is 0.05.
#' @param ... represents others parameters of the G distribution.
#' @return A list with a random sample of order statistics from a Truncated-Exponential Skew-Symmetric G Distribution, the value of its join probability density function evaluated in the random sample and
#' a (1 - alpha) confidence interval for the population median of the distribution of the k-th order statistic.
#' @references Gentle, J, Computational Statistics, First Edition. Springer - Verlag, 2009.
#' @references Naradajah, S. and Rocha, R. (2016) Newdistns: An R Package for New Families of Distributions, Journal of Statistical Software.
#' @author Carlos Alberto Cardozo Delgado <cardozorpackages@gmail.com>.
#' @examples
#' library(orders)
#' # A sample of size 10 of the 3-th order statistics from
#' # a Truncated-Exponential Skew-Symmetric Exponential Distribution
#' order_tessg(10,"exp",1,k=3,50,alpha=0.02)
#' # A sample of size 10 of the 3-th order statistics from
#' # a Truncated-Exponential Skew-Symmetric Normal Distribution
#' order_tessg(10,"norm",1,k=3,50)
#' # A sample of size 10 of the 3-th order statistics from
#' # a Truncated-Exponential Skew-Symmetric Log-normal Distribution
#' order_tessg(10,"lnorm",1,k=3,50)
#' # A sample of size 10 of the 3-th order statistics from
#' # a Truncated-Exponential Skew-Symmetric Chi-square Distribution
#' order_tessg(10,"chisq",1,k=3,50,df=3)
#' @importFrom Newdistns qtessg dtessg
#' @importFrom stats rbeta
#' @export order_tessg

order_tessg <- function(size,spec,lambda,k,n,alpha=0.05,...){
  sample  <- qtessg(initial_order(size,k,n),spec,lambda,...)
  pdf     <- factorial(size)*cumprod(dtessg(sample,spec,lambda,...))[size]
  if(size>5){
    return(list(sample=sample,pdf=pdf,ci_median=interval_median(size,sample,alpha)))
  }
  cat("---------------------------------------------------------------------------------------------\n")
  cat("We cannot report the confidence interval. The size of the sample is less or equal than five.\n")
  return(list(sample=sample,pdf=pdf))
}

Try the orders package in your browser

Any scripts or data that you put into this service are public.

orders documentation built on July 17, 2021, 9:08 a.m.