# classes based on unweighted logistic regression
require(PracTools)
data(nhis)
out <- pclass(formula = resp ~ age + as.factor(sex) + as.factor(hisp) + as.factor(race),
data = nhis, type = "unwtd", link = "logit", numcl = 5, seed = 1387014860,
rng.preds = 0.05)
table(out$p.class, useNA="always")
summary(out$propensities)
# classes based on survey-weighted logistic regression
require(survey)
nhis.dsgn <- svydesign(ids = ~psu, strata = ~stratum, data = nhis, nest = TRUE, weights = ~svywt)
out <- pclass(formula = resp ~ age + as.factor(sex) + as.factor(hisp) + as.factor(race),
type = "wtd", design = nhis.dsgn, link="logit", numcl=5)
table(out$p.class, useNA="always")
summary(out$propensities)
# degenerate case where all response propensities are the same
df <- data.frame(resp = rbinom(500, 1, 0.75), x = rnorm(500))
out1 <- pclass(resp ~ 1, data = df, type = "unwtd", numcl = 5, rng.preds = 0.05)
Run the code above in your browser using DataLab