dkkw | R Documentation |
Computes the probability density function (PDF) for the Kumaraswamy-Kumaraswamy
(kkw) distribution with parameters alpha
(\alpha
), beta
(\beta
), delta
(\delta
), and lambda
(\lambda
).
This distribution is defined on the interval (0, 1).
dkkw(x, alpha, beta, delta, lambda, log_prob = FALSE)
x |
Vector of quantiles (values between 0 and 1). |
alpha |
Shape parameter |
beta |
Shape parameter |
delta |
Shape parameter |
lambda |
Shape parameter |
log_prob |
Logical; if |
The Kumaraswamy-Kumaraswamy (kkw) distribution is a special case of the
five-parameter Generalized Kumaraswamy distribution (dgkw
)
obtained by setting the parameter \gamma = 1
.
The probability density function is given by:
f(x; \alpha, \beta, \delta, \lambda) = (\delta + 1) \lambda \alpha \beta x^{\alpha - 1} (1 - x^\alpha)^{\beta - 1} \bigl[1 - (1 - x^\alpha)^\beta\bigr]^{\lambda - 1} \bigl\{1 - \bigl[1 - (1 - x^\alpha)^\beta\bigr]^\lambda\bigr\}^{\delta}
for 0 < x < 1
. Note that 1/(\delta+1)
corresponds to the Beta function
term B(1, \delta+1)
when \gamma=1
.
Numerical evaluation follows similar stability considerations as dgkw
.
A vector of density values (f(x)
) or log-density values
(\log(f(x))
). The length of the result is determined by the recycling
rule applied to the arguments (x
, alpha
, beta
,
delta
, lambda
). Returns 0
(or -Inf
if
log_prob = TRUE
) for x
outside the interval (0, 1), or
NaN
if parameters are invalid (e.g., alpha <= 0
, beta <= 0
,
delta < 0
, lambda <= 0
).
Lopes, J. E.
Cordeiro, G. M., & de Castro, M. (2011). A new family of generalized distributions. Journal of Statistical Computation and Simulation
Kumaraswamy, P. (1980). A generalized probability density function for double-bounded random processes. Journal of Hydrology, 46(1-2), 79-88.
dgkw
(parent distribution density),
pkkw
, qkkw
, rkkw
(if they exist),
dbeta
# Example values
x_vals <- c(0.2, 0.5, 0.8)
alpha_par <- 2.0
beta_par <- 3.0
delta_par <- 0.5
lambda_par <- 1.5
# Calculate density
densities <- dkkw(x_vals, alpha_par, beta_par, delta_par, lambda_par)
print(densities)
# Calculate log-density
log_densities <- dkkw(x_vals, alpha_par, beta_par, delta_par, lambda_par,
log_prob = TRUE)
print(log_densities)
# Check: should match log(densities)
print(log(densities))
# Compare with dgkw setting gamma = 1
densities_gkw <- dgkw(x_vals, alpha_par, beta_par, gamma = 1.0,
delta_par, lambda_par)
print(paste("Max difference:", max(abs(densities - densities_gkw)))) # Should be near zero
# Plot the density
curve_x <- seq(0.01, 0.99, length.out = 200)
curve_y <- dkkw(curve_x, alpha_par, beta_par, delta_par, lambda_par)
plot(curve_x, curve_y, type = "l", main = "kkw Density Example",
xlab = "x", ylab = "f(x)", col = "blue")
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.