par(mfrow=c(2,2))
x = rnorm(1000)
xx = seq(-6, 6, 0.01)
y = dnorm(xx)
# Bulk model base tail fraction
fit = fgngcon(x, phiul = TRUE, phiur = TRUE, std.err = FALSE)
hist(x, breaks = 100, freq = FALSE, xlim = c(-6, 6), main = "N(0, 1)")
lines(xx, y)
lines(xx, dgngcon(xx, nmean = fit$nmean, nsd = fit$nsd,
ul = fit$ul, xil = fit$xil, phiul = TRUE,
ur = fit$ur, xir = fit$xir, phiur = TRUE), col="red")
abline(v = c(fit$ul, fit$ur))
# Parameterised tail fraction
fit2 = fgngcon(x, phiul = TRUE, phiur = TRUE, std.err = FALSE)
plot(xx, y, type = "l")
lines(xx, dgngcon(xx, nmean = fit$nmean, nsd = fit$nsd,
ul = fit$ul, xil = fit$xil, phiul = TRUE,
ur = fit$ur, xir = fit$xir, phiur = TRUE), col="red")
lines(xx, dgngcon(xx, nmean = fit2$nmean, nsd = fit2$nsd,
ul = fit2$ul, xil = fit2$xil, phiul = fit2$phiul,
ur = fit2$ur, xir = fit2$xir, phiur = fit2$phiur), col="blue")
abline(v = c(fit$ul, fit$ur), col = "red")
abline(v = c(fit2$ul, fit2$ur), col = "blue")
legend("topright", c("True Density","Bulk Tail Fraction","Parameterised Tail Fraction"),
col=c("black", "red", "blue"), lty = 1)
x = rnorm(1000)
xx = seq(-6, 6, 0.01)
y = dnorm(xx)
# Two tail is safest if bulk has lower tail which is not normal tail
x = rt(1000, df = 3)
xx = seq(-10, 10, 0.01)
y = dt(xx, df = 3)
# Bulk model base tail fraction
fit = fnormgpd(x, phiu = FALSE, std.err = FALSE)
fit2 = fgngcon(x, phiul = FALSE, phiur = FALSE, std.err = FALSE)
hist(x, breaks = 100, freq = FALSE, xlim = c(-10, 10), main = "t (df=3)")
lines(xx, y)
lines(xx, dnormgpd(xx, nmean = fit$nmean, nsd = fit$nsd,
u = fit$u, sigmau = fit$sigmau, xi = fit$xi, phiu = fit$phiu), col="red")
abline(v = fit$u)
# Bulk model base tail fraction
plot(xx, y, type = "l")
lines(xx, dnormgpd(xx, nmean = fit$nmean, nsd = fit$nsd,
u = fit$u, sigmau = fit$sigmau, xi = fit$xi, phiu = fit$phiu), col="red")
lines(xx, dgngcon(xx, nmean = fit2$nmean, nsd = fit2$nsd,
ul = fit2$ul, xil = fit2$xil, phiul = fit2$phiul,
ur = fit2$ur, xir = fit2$xir, phiur = fit2$phiur), col="blue")
abline(v = c(fit$ul, fit$ur), col = "red")
abline(v = c(fit2$ul, fit2$ur), col = "blue")
legend("topright", c("True Density","GPD Upper Tail Only","GPD Both Tails"),
col=c("black", "red", "blue"), lty = 1)
Run the code above in your browser using DataLab