shape <- 0.5; pstr1 <- 0.3; x <- (-1):7
(ii <- doilog(x, shape, pstr1 = pstr1))
max(abs(poilog(1:200, shape) -
cumsum(shape^(1:200) / (-(1:200) * log1p(-shape))))) # Should be 0
if (FALSE) x <- 0:10
par(mfrow = c(2, 1)) # One-Inflated logarithmic
barplot(rbind(doilog(x, shape, pstr1 = pstr1), dlog(x, shape)),
beside = TRUE, col = c("blue", "orange"),
main = paste0("OILogff(", shape, ", pstr1 = ", pstr1,
") (blue) vs Logff(", shape, ") (orange)"),
names.arg = as.character(x))
deflat.limit <- -dlog(1, shape) / plog(1, shape, lower.tail = FALSE)
newpstr1 <- round(deflat.limit, 3) + 0.001 # Near the boundary
barplot(rbind(doilog(x, shape, pstr1 = newpstr1),
dlog(x, shape)),
beside = TRUE, col = c("blue","orange"),
main = paste0("ODLogff(", shape, ", pstr1 = ", newpstr1,
") (blue) vs Logff(", shape, ") (orange)"),
names.arg = as.character(x))
Run the code above in your browser using DataLab