inst/doc/VarSelLCM.R

## ---- comment=""--------------------------------------------------------------
library(VarSelLCM)
# Data loading:
# x contains the observed variables
# z the known status (i.e. 1: absence and 2: presence of heart disease)
data(heart)
ztrue <- heart[,"Class"]
x <- heart[,-13]
# Add a missing value artificially (just to show that it works!)
x[1,1] <- NA

## ---- comment=""--------------------------------------------------------------
# Cluster analysis without variable selection
res_without <- VarSelCluster(x, gvals = 1:3, vbleSelec = FALSE, crit.varsel = "BIC")

# Cluster analysis with variable selection (with parallelisation)
res_with <- VarSelCluster(x, gvals = 1:3, nbcores = 2, crit.varsel = "BIC")


## ---- comment=""--------------------------------------------------------------
BIC(res_without)
BIC(res_with)

## ---- comment=""--------------------------------------------------------------
ARI(ztrue, fitted(res_without))
ARI(ztrue, fitted(res_with))

## ---- comment=""--------------------------------------------------------------
# Estimated partition
fitted(res_with)

# Estimated probabilities of classification
head(fitted(res_with, type="probability"))

## ---- comment=""--------------------------------------------------------------
# Summary of the best model
summary(res_with)

## ---- comment=""--------------------------------------------------------------
plot(res_with)

## ---- comment=""--------------------------------------------------------------
# Boxplot for the continuous variable MaxHeartRate
plot(x=res_with, y="MaxHeartRate")

## ---- comment=""--------------------------------------------------------------
# Empirical and theoretical distributions (to check that the distribution is well-fitted)
plot(res_with, y="MaxHeartRate", type="cdf")

## ---- comment=""--------------------------------------------------------------
# Summary of categorical variable
plot(res_with, y="Sex")

## ---- comment=""--------------------------------------------------------------
# More detailed output
print(res_with)

## ---- comment=""--------------------------------------------------------------
# Print model parameter
coef(res_with)

## ---- comment=""--------------------------------------------------------------
# Probabilities of classification for new observations 
predict(res_with, newdata = x[1:3,])

## ---- comment=""--------------------------------------------------------------
# Imputation by posterior mean for the first observation
not.imputed <- x[1,]
imputed <- VarSelImputation(res_with, x[1,], method = "sampling")
rbind(not.imputed, imputed)

## ---- eval=FALSE, comment="", include=TRUE------------------------------------
#  # Start the shiny application
#  VarSelShiny(res_with)

Try the VarSelLCM package in your browser

Any scripts or data that you put into this service are public.

VarSelLCM documentation built on Oct. 23, 2020, 8:20 p.m.