1. Data Setup

1.1 Package Installation

# Packages to iterate over
packages <- c("dplyr", "stargazer", "ggplot2", "Amelia", "ggcorrplot", "lmtest", "e1071", "MASS", "readxl")

# Install and load packages if not already installed
for (pkg in packages) {
  if (!pkg %in% rownames(installed.packages())) {
    install.packages(pkg, repos = "http://cran.rstudio.com/", dependencies = TRUE)
  }
  library(pkg, character.only = TRUE)
}

rm(packages, pkg)  # Clean up


require("Amelia") # dependencies

rm(list = ls()) # Clear environment-remove all files from your workspace
gc()            # Clear unused memory
##           used (Mb) gc trigger (Mb) max used (Mb)
## Ncells  921144 49.2    1764545 94.3  1391358 74.4
## Vcells 1607456 12.3    8388608 64.0  2776655 21.2
graphics.off()  # Clear all graphs
cat("\f")       # Clear the console

1.2 Data Import

vending_machine <- read_xlsx("VendingMachine.xlsx")

1.3 Base Data Visualization

visdat::vis_dat(vending_machine)

2. Data Preperation

2.1 Data Clean

Amelia::missmap(vending_machine)
## Warning: Unknown or uninitialised column: `arguments`.
## Unknown or uninitialised column: `arguments`.
## Warning: Unknown or uninitialised column: `imputations`.

vending_machine <- na.omit(vending_machine)

2.1 Renaming Columns

vending_machine$`Do you like the Food (Yes is True)` <- as.integer(as.logical(vending_machine$`Do you like the Food (Yes is True)`))

vending_machine$`Allergies on Food` <- ifelse(vending_machine$`Allergies on Food` == "Yes", 1, 0) # allergic true is 1
vending_machine$Sex <- ifelse(vending_machine$Sex == "M", 1, 0)