n <- 500
prop.cens <- 0.35
## example with a left-censored Normally distributed sample
set.seed(2013)
mu <- 3.5
sigma <- 1
x <- rnorm(n, mean = mu, sd = sigma)
LOD <- qnorm(prop.cens, mean = mu, sd = sigma)
x[x <= LOD] <- LOD
index.noncens <- which(x > LOD)
left <- rep(NA, n)
left[index.noncens] <- x[index.noncens]
s1 <- cbind(left, x)
ParamSampleCens(censdata = s1)
## example with an interval-censored Normal sample
set.seed(2013)
x <- rnorm(n, mean = mu, sd = sigma)
min.value <- min(x)
LOD <- qnorm(0.35, mean = mu, sd = sigma)
x[x <= LOD] <- LOD
index.noncens <- which(x > LOD)
left <- rep(NA, n)
left[index.noncens] <- x[index.noncens]
index.cens <- which(x <= LOD)
index.interval <- index.cens[index.cens >= 250]
left[index.interval] <- min.value
s2 <- cbind(left, x)
ParamSampleCens(censdata = s2)
## compare to fitdistrplus
library(fitdistrplus)
s2 <- as.data.frame(s2)
colnames(s2) <- c("left", "right")
summary(fitdistcens(censdata = s2, distr = "norm"))
Run the code above in your browser using DataLab