Kaggle’s Titanic: Machine Learning from Disaster
My model finished in the top 20% of all contestants by accurately predicting ~80% of survivors & casualties
Who was most likely to survive?
A single 30 year old woman, in first class, from Cherbourg, France. ~ 99%
Who was most likely to perish?
An elderly father, in third class, from Queenstown, Ireland with a large family. ~1%
Two biggest determining factors for survival?
Kaggle hosts machine learning competitions online.
The “Titanic: Machine Learning from Disaster” dataset, lists which passengers did and didn’t survive the tragedy, along with their passenger demographic information, such as: PassengerId, Name, Class, Age, Sex, etc. Kaggle provides us with 3 files: training, testing and submission. The training set consists of 891 records, 11 features, and 1 binary response variable–Survived. The test set is comprised of 481 records, 11 features, and the binary response variable–survived. The submission file provides us with the PassengerId’s from the test set with a Survived value–values we’ll be predicting.
Download the Titanic datasets here: Download Kaggle Titanic Datasets Here
Load R packages into working environment
library(readr)
library(tidyr)
library(Amelia)
library(ggplot2)
library(dplyr)
library(purrr)
library(tidyr)
library(car)
library(broom)
library(caret)
library(caretEnsemble)
library(ROCR)
library(broom)
library(ggridges)
library(caTools)
library(tictoc)
library(tidyverse)
library(gridExtra)
library(grid)
library(ranger)
library(h2o)
library(BBmisc)
Get Kaggle Data into R
Map the saved location of your Titanic Files into R
setwd("C:/Users/joshu/Documents/DataScience/Kaggle/Titanic")
dir()
## [1] "EJ_Smith_captain.jpg"
## [2] "gender_submission.csv"
## [3] "John_Jacob_Astor.jpg"
## [4] "kaggle_1st_comment.PNG"
## [5] "Kaggle_Titanic_Submission.csv"
## [6] "Kaggle_Titanic_Submission_10.csv"
## [7] "Kaggle_Titanic_Submission_11.csv"
## [8] "Kaggle_Titanic_Submission_12.csv"
## [9] "Kaggle_Titanic_Submission_13.csv"
## [10] "Kaggle_Titanic_Submission_14.csv"
## [11] "Kaggle_Titanic_Submission_15.csv"
## [12] "Kaggle_Titanic_Submission_16.csv"
## [13] "Kaggle_Titanic_Submission_17.csv"
## [14] "Kaggle_Titanic_Submission_18.csv"
## [15] "Kaggle_Titanic_Submission_19.csv"
## [16] "Kaggle_Titanic_Submission_2.csv"
## [17] "Kaggle_Titanic_Submission_20.csv"
## [18] "Kaggle_Titanic_Submission_21.csv"
## [19] "Kaggle_Titanic_Submission_22.csv"
## [20] "Kaggle_Titanic_Submission_23.csv"
## [21] "Kaggle_Titanic_Submission_24.csv"
## [22] "Kaggle_Titanic_Submission_25.csv"
## [23] "Kaggle_Titanic_Submission_26.csv"
## [24] "Kaggle_Titanic_Submission_27.csv"
## [25] "Kaggle_Titanic_Submission_28.csv"
## [26] "Kaggle_Titanic_Submission_3.csv"
## [27] "Kaggle_Titanic_Submission_4.csv"
## [28] "Kaggle_Titanic_Submission_5.csv"
## [29] "Kaggle_Titanic_Submission_6.csv"
## [30] "Kaggle_Titanic_Submission_7.csv"
## [31] "Kaggle_Titanic_Submission_8.csv"
## [32] "Kaggle_Titanic_Submission_9.csv"
## [33] "model_stack_prediction.PNG"
## [34] "rsconnect"
## [35] "test.csv"
## [36] "titanic_break.jpg"
## [37] "titanic_built.jpg"
## [38] "Titanic_Final_Report.html"
## [39] "Titanic_Final_Report.Rmd"
## [40] "titanic_lifeboat.jpg"
## [41] "titanic_night.jpg"
## [42] "titanic_port.jpg"
## [43] "titanic_probabilities_graphs"
## [44] "Titanic_Rank.PNG"
## [45] "Titanic_Rmarkdown_Kaggle.Rmd"
## [46] "Titanic_Rmarkdown_Kaggle_2.Rmd"
## [47] "Titanic_Rmarkdown_Kaggle_3.Rmd"
## [48] "titanic_Rmarkdown_kaggle_Final_1.Rmd"
## [49] "titanic_Rmarkdown_kaggle_Final_score_7945_high.html"
## [50] "titanic_Rmarkdown_kaggle_Final_score_7945_high.Rmd"
## [51] "titanic_Rmarkdown_kaggle_Rpubs.Rmd"
## [52] "titanic_Rmarkdown_kaggle_Rpubs_10.Rmd"
## [53] "titanic_Rmarkdown_kaggle_Rpubs_11.Rmd"
## [54] "titanic_Rmarkdown_kaggle_Rpubs_12.Rmd"
## [55] "titanic_Rmarkdown_kaggle_Rpubs_13.Rmd"
## [56] "titanic_Rmarkdown_kaggle_Rpubs_14.Rmd"
## [57] "titanic_Rmarkdown_kaggle_Rpubs_14_files"
## [58] "titanic_Rmarkdown_kaggle_Rpubs_15.Rmd"
## [59] "titanic_Rmarkdown_kaggle_Rpubs_16.Rmd"
## [60] "titanic_Rmarkdown_kaggle_Rpubs_17.Rmd"
## [61] "titanic_Rmarkdown_kaggle_Rpubs_18.Rmd"
## [62] "titanic_Rmarkdown_kaggle_Rpubs_19.Rmd"
## [63] "titanic_Rmarkdown_kaggle_Rpubs_2.Rmd"
## [64] "titanic_Rmarkdown_kaggle_Rpubs_20.html"
## [65] "titanic_Rmarkdown_kaggle_Rpubs_20.Rmd"
## [66] "titanic_Rmarkdown_kaggle_Rpubs_21.html"
## [67] "titanic_Rmarkdown_kaggle_Rpubs_21.Rmd"
## [68] "titanic_Rmarkdown_kaggle_Rpubs_21_set_2.Rmd"
## [69] "titanic_Rmarkdown_kaggle_Rpubs_21_set_3.html"
## [70] "titanic_Rmarkdown_kaggle_Rpubs_21_set_3.Rmd"
## [71] "titanic_Rmarkdown_kaggle_Rpubs_21_set_3_cleaning.html"
## [72] "titanic_Rmarkdown_kaggle_Rpubs_21_set_3_cleaning.Rmd"
## [73] "titanic_Rmarkdown_kaggle_Rpubs_21_set_3_cleaning_files"
## [74] "titanic_Rmarkdown_kaggle_Rpubs_3.Rmd"
## [75] "titanic_Rmarkdown_kaggle_Rpubs_3_files"
## [76] "titanic_Rmarkdown_kaggle_Rpubs_4.Rmd"
## [77] "titanic_Rmarkdown_kaggle_Rpubs_5.Rmd"
## [78] "titanic_Rmarkdown_kaggle_Rpubs_6.Rmd"
## [79] "titanic_Rmarkdown_kaggle_Rpubs_7.Rmd"
## [80] "titanic_Rmarkdown_kaggle_Rpubs_8.Rmd"
## [81] "titanic_Rmarkdown_kaggle_Rpubs_9.Rmd"
## [82] "titanic_sinking.jpg"
## [83] "titanic_size_comparison.png"
## [84] "titanic_smartphone_picture.jpg"
## [85] "titanic_tugged.jpg"
## [86] "titanic_underwater.jpg"
## [87] "titanic_voyage_map.png"
## [88] "train.csv"
Reference file in quotations
train = read_csv(file.path("train.csv"), col_names = TRUE)
## Parsed with column specification:
## cols(
## PassengerId = col_double(),
## Survived = col_double(),
## Pclass = col_double(),
## Name = col_character(),
## Sex = col_character(),
## Age = col_double(),
## SibSp = col_double(),
## Parch = col_double(),
## Ticket = col_character(),
## Fare = col_double(),
## Cabin = col_character(),
## Embarked = col_character()
## )
str(train)
## Classes 'spec_tbl_df', 'tbl_df', 'tbl' and 'data.frame': 891 obs. of 12 variables:
## $ PassengerId: num 846 747 280 309 875 366 402 41 856 208 ...
## $ Survived : num 0 0 1 0 1 0 0 0 1 1 ...
## $ Pclass : num 3 3 3 2 2 3 3 3 3 3 ...
## $ Name : chr "Abbing, Mr. Anthony" "Abbott, Mr. Rossmore Edward" "Abbott, Mrs. Stanton (Rosa Hunt)" "Abelson, Mr. Samuel" ...
## $ Sex : chr "male" "male" "female" "male" ...
## $ Age : num 42 16 35 30 28 30 26 40 18 26 ...
## $ SibSp : num 0 1 1 1 1 0 0 1 0 0 ...
## $ Parch : num 0 1 1 0 0 0 0 0 1 0 ...
## $ Ticket : chr "C.A. 5547" "C.A. 2673" "C.A. 2673" "P/PP 3381" ...
## $ Fare : num 7.55 20.25 20.25 24 24 ...
## $ Cabin : chr NA NA NA NA ...
## $ Embarked : chr "S" "S" "S" "C" ...
## - attr(*, "spec")=
## .. cols(
## .. PassengerId = col_double(),
## .. Survived = col_double(),
## .. Pclass = col_double(),
## .. Name = col_character(),
## .. Sex = col_character(),
## .. Age = col_double(),
## .. SibSp = col_double(),
## .. Parch = col_double(),
## .. Ticket = col_character(),
## .. Fare = col_double(),
## .. Cabin = col_character(),
## .. Embarked = col_character()
## .. )
Review Training Data
summary(train)
## PassengerId Survived Pclass Name
## Min. : 1.0 Min. :0.0000 Min. :1.000 Length:891
## 1st Qu.:223.5 1st Qu.:0.0000 1st Qu.:2.000 Class :character
## Median :446.0 Median :0.0000 Median :3.000 Mode :character
## Mean :446.0 Mean :0.3838 Mean :2.309
## 3rd Qu.:668.5 3rd Qu.:1.0000 3rd Qu.:3.000
## Max. :891.0 Max. :1.0000 Max. :3.000
##
## Sex Age SibSp Parch
## Length:891 Min. : 0.42 Min. :0.000 Min. :0.0000
## Class :character 1st Qu.:20.12 1st Qu.:0.000 1st Qu.:0.0000
## Mode :character Median :28.00 Median :0.000 Median :0.0000
## Mean :29.70 Mean :0.523 Mean :0.3816
## 3rd Qu.:38.00 3rd Qu.:1.000 3rd Qu.:0.0000
## Max. :80.00 Max. :8.000 Max. :6.0000
## NA's :177
## Ticket Fare Cabin Embarked
## Length:891 Min. : 0.00 Length:891 Length:891
## Class :character 1st Qu.: 7.91 Class :character Class :character
## Mode :character Median : 14.45 Mode :character Mode :character
## Mean : 32.20
## 3rd Qu.: 31.00
## Max. :512.33
##
Reference file in quotations
test = read_csv(file.path("test.csv"), col_names = TRUE)
## Parsed with column specification:
## cols(
## PassengerId = col_double(),
## Pclass = col_double(),
## Name = col_character(),
## Sex = col_character(),
## Age = col_double(),
## SibSp = col_double(),
## Parch = col_double(),
## Ticket = col_character(),
## Fare = col_double(),
## Cabin = col_character(),
## Embarked = col_character()
## )
str(test)
## Classes 'spec_tbl_df', 'tbl_df', 'tbl' and 'data.frame': 418 obs. of 11 variables:
## $ PassengerId: num 892 893 894 895 896 897 898 899 900 901 ...
## $ Pclass : num 3 3 2 3 3 3 3 2 3 3 ...
## $ Name : chr "Kelly, Mr. James" "Wilkes, Mrs. James (Ellen Needs)" "Myles, Mr. Thomas Francis" "Wirz, Mr. Albert" ...
## $ Sex : chr "male" "female" "male" "male" ...
## $ Age : num 34.5 47 62 27 22 14 30 26 18 21 ...
## $ SibSp : num 0 1 0 0 1 0 0 1 0 2 ...
## $ Parch : num 0 0 0 0 1 0 0 1 0 0 ...
## $ Ticket : chr "330911" "363272" "240276" "315154" ...
## $ Fare : num 7.83 7 9.69 8.66 12.29 ...
## $ Cabin : chr NA NA NA NA ...
## $ Embarked : chr "Q" "S" "Q" "S" ...
## - attr(*, "spec")=
## .. cols(
## .. PassengerId = col_double(),
## .. Pclass = col_double(),
## .. Name = col_character(),
## .. Sex = col_character(),
## .. Age = col_double(),
## .. SibSp = col_double(),
## .. Parch = col_double(),
## .. Ticket = col_character(),
## .. Fare = col_double(),
## .. Cabin = col_character(),
## .. Embarked = col_character()
## .. )
Reference file in quotations
test_label = read_csv("gender_submission.csv", col_names = TRUE)
## Parsed with column specification:
## cols(
## PassengerId = col_double(),
## Survived = col_double()
## )
str(test_label)
## Classes 'spec_tbl_df', 'tbl_df', 'tbl' and 'data.frame': 418 obs. of 2 variables:
## $ PassengerId: num 892 893 894 895 896 897 898 899 900 901 ...
## $ Survived : num 0 1 0 0 1 0 1 0 1 0 ...
## - attr(*, "spec")=
## .. cols(
## .. PassengerId = col_double(),
## .. Survived = col_double()
## .. )
Merge Test and Label data frames together, but remember, these labels aren’t the actual test set labels – they’re gender classified labels i.e. if passenger was male, deceased, female, survived
test = merge(test, test_label, by = "PassengerId")
str(test)
## 'data.frame': 418 obs. of 12 variables:
## $ PassengerId: num 892 893 894 895 896 897 898 899 900 901 ...
## $ Pclass : num 3 3 2 3 3 3 3 2 3 3 ...
## $ Name : chr "Kelly, Mr. James" "Wilkes, Mrs. James (Ellen Needs)" "Myles, Mr. Thomas Francis" "Wirz, Mr. Albert" ...
## $ Sex : chr "male" "female" "male" "male" ...
## $ Age : num 34.5 47 62 27 22 14 30 26 18 21 ...
## $ SibSp : num 0 1 0 0 1 0 0 1 0 2 ...
## $ Parch : num 0 0 0 0 1 0 0 1 0 0 ...
## $ Ticket : chr "330911" "363272" "240276" "315154" ...
## $ Fare : num 7.83 7 9.69 8.66 12.29 ...
## $ Cabin : chr NA NA NA NA ...
## $ Embarked : chr "Q" "S" "Q" "S" ...
## $ Survived : num 0 1 0 0 1 0 1 0 1 0 ...
Ensure Data is ready to be modelled
Identify missing data
missmap(train,main="Missing Vs Observed, Training Data", col=c("wheat", "darkred"), y.cex = 1, y.labels = NULL, y.at = NULL)
## Warning in if (class(obj) == "amelia") {: the condition has length > 1 and
## only the first element will be used
## Warning: Unknown or uninitialised column: 'arguments'.
## Warning: Unknown or uninitialised column: 'arguments'.
missmap(test, main="Missing Vs Observed, Test Data", col=c("wheat", "darkred"), y.cex = 1, y.labels = NULL, y.at = NULL)
sapply(test, function(x) sum(is.na(x)))
## PassengerId Pclass Name Sex Age SibSp
## 0 0 0 0 86 0
## Parch Ticket Fare Cabin Embarked Survived
## 0 0 1 327 0 0
Cabin has 686 training and 327 testing NA values, so drop the feature
colnames(train)
## [1] "PassengerId" "Survived" "Pclass" "Name" "Sex"
## [6] "Age" "SibSp" "Parch" "Ticket" "Fare"
## [11] "Cabin" "Embarked"
train_imputed = train[c(-11)]
colnames(test)
## [1] "PassengerId" "Pclass" "Name" "Sex" "Age"
## [6] "SibSp" "Parch" "Ticket" "Fare" "Cabin"
## [11] "Embarked" "Survived"
test_imputed = test[c(-10)]
#Create Imputation Training Set for all succeeding imputations for both train and test observations
dim(train_imputed)
## [1] 891 11
dim(test_imputed)
## [1] 418 11
impute_df = bind_rows(train_imputed, test_imputed)
dim(impute_df)
## [1] 1309 11
colnames(impute_df)
## [1] "PassengerId" "Survived" "Pclass" "Name" "Sex"
## [6] "Age" "SibSp" "Parch" "Ticket" "Fare"
## [11] "Embarked"
impute_df=impute_df[,-2]
head(impute_df)
## # A tibble: 6 x 10
## PassengerId Pclass Name Sex Age SibSp Parch Ticket Fare Embarked
## <dbl> <dbl> <chr> <chr> <dbl> <dbl> <dbl> <chr> <dbl> <chr>
## 1 846 3 Abbing,~ male 42 0 0 C.A. ~ 7.55 S
## 2 747 3 Abbott,~ male 16 1 1 C.A. ~ 20.2 S
## 3 280 3 Abbott,~ fema~ 35 1 1 C.A. ~ 20.2 S
## 4 309 2 Abelson~ male 30 1 0 P/PP ~ 24 C
## 5 875 2 Abelson~ fema~ 28 1 0 P/PP ~ 24 C
## 6 366 3 Adahl, ~ male 30 0 0 C 7076 7.25 S
## Impute Age NA's
impute_df_train=impute_df[complete.cases(impute_df),]
dim(impute_df_train)
## [1] 1043 10
Impute 177 train and 86 test Age values with average Age
# Identify Age values that need to be imputed
impute_df_test_Age = impute_df[is.na(impute_df$Age),]
# Train model to predict Age for imputation
impute_Age_ranger = ranger(Age ~Pclass+Sex+SibSp+Parch+Fare+Embarked, data = impute_df_train)
# Predict NA Age values with trained model on NA Age values
predict_impute_age=predict(impute_Age_ranger, impute_df_test_Age)
# Impute the NA Age values with Predicted Age values for the NA observations
impute_df$Age[is.na(impute_df$Age)] = predict_impute_age$predictions
# Confirm that all NA's have been imputed for the Age variable
anyNA(impute_df$Age)
## [1] FALSE
Impute the 1 NA Fare value with average Fare
# Determine if there are any Fare NA observations
anyNA(impute_df$Fare)
## [1] TRUE
# Train Model to Predict Fare Values
impute_Fare_ranger = ranger(Fare ~ Pclass+Sex+SibSp+Parch+Age+Embarked, data = impute_df_train)
# Identify NA Fare values that need to be imputed
impute_df_test_Fare=impute_df[is.na(impute_df$Fare),]
# Predict NA Fare values with trained model
predict_impute_Fare=predict(impute_Fare_ranger, impute_df_test_Fare)
# Impute predicted NA Fare values
impute_df$Fare[is.na(impute_df$Fare)] = predict_impute_Fare$predictions
# Confirm that all NA Fare values have been imputed
anyNA(impute_df$Fare)
## [1] FALSE
Impute the 2 NA Embarked values with the mode of Embark locations
unique(impute_df$Embarked)
## [1] "S" "C" "Q" NA
# Determine if there are any NA Embarked Values
anyNA(impute_df$Embarked)
## [1] TRUE
# Train Model to predict Embarked Values
impute_Embarked_ranger = ranger(Embarked ~ Pclass+Sex+SibSp+Parch+Age+Fare, data = impute_df_train)
# Identify NA Embarked values to be predicted in a test set
impute_df_test_Embarked=impute_df[is.na(impute_df$Embarked),]
# Predict NA Embarked values with trained model
predict_impute_Embarked=predict(impute_Embarked_ranger, impute_df_test_Embarked)
Embarked_impute = as.character(predict_impute_Embarked$predictions)
# Impute predicted NA Embarked values
impute_df$Embarked[is.na(impute_df$Embarked)] = Embarked_impute
# Confirm that all NA Embarked values have been imputed
anyNA(impute_df$Embarked)
## [1] FALSE
unique(impute_df$Embarked)
## [1] "S" "C" "Q"
set.seed(1)
# Identify column names to differentiate numeric from categorical features
colnames(impute_df)
## [1] "PassengerId" "Pclass" "Name" "Sex" "Age"
## [6] "SibSp" "Parch" "Ticket" "Fare" "Embarked"
head(impute_df)
## # A tibble: 6 x 10
## PassengerId Pclass Name Sex Age SibSp Parch Ticket Fare Embarked
## <dbl> <dbl> <chr> <chr> <dbl> <dbl> <dbl> <chr> <dbl> <chr>
## 1 846 3 Abbing,~ male 42 0 0 C.A. ~ 7.55 S
## 2 747 3 Abbott,~ male 16 1 1 C.A. ~ 20.2 S
## 3 280 3 Abbott,~ fema~ 35 1 1 C.A. ~ 20.2 S
## 4 309 2 Abelson~ male 30 1 0 P/PP ~ 24 C
## 5 875 2 Abelson~ fema~ 28 1 0 P/PP ~ 24 C
## 6 366 3 Adahl, ~ male 30 0 0 C 7076 7.25 S
# Filter numeric features
Feature_df = impute_df[, c("Pclass", "Age", "Fare", "SibSp", "Parch")]
head(Feature_df)
## # A tibble: 6 x 5
## Pclass Age Fare SibSp Parch
## <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 3 42 7.55 0 0
## 2 3 16 20.2 1 1
## 3 3 35 20.2 1 1
## 4 2 30 24 1 0
## 5 2 28 24 1 0
## 6 3 30 7.25 0 0
# Normalize Features for clustering
Feature_df_normal=normalize(Feature_df, method = "standardize", range = c(0, 1), margin = 1L, on.constant = "quiet")
# Cluster with kmeans
cluster_Feature_df_normal = kmeans(Feature_df_normal, 6, iter.max = 10, nstart = 6, algorithm = c("Hartigan-Wong"), trace=FALSE)
# mutate new cluster feature
impute_df = mutate(impute_df, Cluster = cluster_Feature_df_normal$cluster)
head(impute_df$Cluster)
## [1] 6 6 6 1 1 6
c = cut(impute_df$Age, breaks = 9, labels = c("0-9", "9-18", "18-27", "27-36", "36-45", "45-54", "54-62", "62-71", "71-80"))
table(c)
## c
## 0-9 9-18 18-27 27-36 36-45 45-54 54-62 62-71 71-80
## 82 88 383 387 189 103 55 19 3
impute_df = mutate(impute_df, Age_Range = c)
impute_df$Survival_Cluster = NA
impute_df$Survival_Cluster = ifelse(impute_df$Pclass==1| impute_df$Pclass & impute_df$Sex == "female", "1", impute_df$Survival_Cluster)
impute_df$Survival_Cluster = ifelse(impute_df$Pclass == 1 & impute_df$Sex == "male", "1", impute_df$Survival_Cluster)
impute_df$Survival_Cluster = ifelse(impute_df$Pclass == 3 & impute_df$Sex == "female", "0", impute_df$Survival_Cluster)
impute_df$Survival_Cluster = ifelse(impute_df$Pclass == 2 | impute_df$Pclass == 3 & impute_df$Sex == "male", "0", impute_df$Survival_Cluster)
impute_df$Survival_Cluster = ifelse(impute_df$Age_Range == "0-9", "1", impute_df$Survival_Cluster)
head(impute_df$Survival_Cluster)
## [1] "0" "0" "0" "0" "0" "0"
# semi_join to filter out the training values from the imputed dataframe
train_imputed=semi_join(impute_df, train_imputed, by = "PassengerId")
# Arrange by Passenger Id
train_imputed=arrange(train_imputed, PassengerId)
# Arrange by Passenger Id
train=arrange(train, PassengerId)
# Bind the the survived column to the imputed train data
train_imputed=bind_cols(train_imputed, train[,"Survived"])
# Confirm that the initial and our imputed train observations are equal to one another
setequal(train[,c("PassengerId","Survived")], train_imputed[,c("PassengerId","Survived")])
## [1] TRUE
# semi_join to filter out the testing values from the imputed dataframe
test_imputed = semi_join(impute_df, test, by = "PassengerId")
# arrange the test_imputed observations by PassengerId
test_imputed=arrange(test_imputed, PassengerId)
# Arrange test_imputed observations by PassengerId
test=arrange(test, PassengerId)
# Set test_imputed to a tibble to reference the Survived column in the next step
test=as_tibble(test)
# Bind the Survived column
test_imputed=bind_cols(test_imputed, test[,"Survived"])
# Confirm that the initial and our imputed test observations are identical
setequal(test[,c("PassengerId","Survived")], test_imputed[,c("PassengerId","Survived")])
## [1] TRUE
Count NA’s have been imputed for train
sapply(train_imputed, function(x) sum(is.na(x)))
## PassengerId Pclass Name Sex
## 0 0 0 0
## Age SibSp Parch Ticket
## 0 0 0 0
## Fare Embarked Cluster Age_Range
## 0 0 0 0
## Survival_Cluster Survived
## 0 0
Confirm NA’s have been imputed for test
sapply(test_imputed, function(x) sum(is.na(x)))
## PassengerId Pclass Name Sex
## 0 0 0 0
## Age SibSp Parch Ticket
## 0 0 0 0
## Fare Embarked Cluster Age_Range
## 0 0 0 0
## Survival_Cluster Survived
## 0 0
Again, confirm all values have been imputed or properly handeld
missmap(train_imputed, main="Missing Vs Observed, Training Data", col=c("wheat", "darkred"), y.cex = 1, y.labels = NULL, y.at = NULL)
## Warning in if (class(obj) == "amelia") {: the condition has length > 1 and
## only the first element will be used
## Warning: Unknown or uninitialised column: 'arguments'.
## Warning: Unknown or uninitialised column: 'arguments'.
missmap(test_imputed, main="Missing Vs Observed, Test Data", col=c("wheat", "darkred"), y.cex = 1, y.labels = NULL, y.at = NULL)
## Warning in if (class(obj) == "amelia") {: the condition has length > 1 and
## only the first element will be used
## Warning in if (class(obj) == "amelia") {: Unknown or uninitialised column:
## 'arguments'.
## Warning in if (class(obj) == "amelia") {: Unknown or uninitialised column:
## 'arguments'.
Identiy multi-collinearity between features
head(train)
## # A tibble: 6 x 12
## PassengerId Survived Pclass Name Sex Age SibSp Parch Ticket Fare
## <dbl> <dbl> <dbl> <chr> <chr> <dbl> <dbl> <dbl> <chr> <dbl>
## 1 1 0 3 Brau~ male 22 1 0 A/5 2~ 7.25
## 2 2 1 1 Cumi~ fema~ 38 1 0 PC 17~ 71.3
## 3 3 1 3 Heik~ fema~ 26 0 0 STON/~ 7.92
## 4 4 1 1 Futr~ fema~ 35 1 0 113803 53.1
## 5 5 0 3 Alle~ male 35 0 0 373450 8.05
## 6 6 0 3 Mora~ male NA 0 0 330877 8.46
## # ... with 2 more variables: Cabin <chr>, Embarked <chr>
numeric_columns = sapply(train_imputed, is.numeric)
pairs(na.omit(train_imputed[,numeric_columns]))
cor(na.omit(train_imputed[,numeric_columns]))
## PassengerId Pclass Age SibSp Parch
## PassengerId 1.000000000 -0.03514399 0.04075616 -0.05752683 -0.001652012
## Pclass -0.035143994 1.00000000 -0.40159756 0.08308136 0.018442671
## Age 0.040756155 -0.40159756 1.00000000 -0.30738115 -0.211119661
## SibSp -0.057526834 0.08308136 -0.30738115 1.00000000 0.414837699
## Parch -0.001652012 0.01844267 -0.21111966 0.41483770 1.000000000
## Fare 0.012658219 -0.54949962 0.10179465 0.15965104 0.216224945
## Cluster -0.011348764 0.80373989 -0.28034005 -0.05487435 0.028521547
## Survived -0.005006661 -0.33848104 -0.06535332 -0.03532250 0.081629407
## Fare Cluster Survived
## PassengerId 0.01265822 -0.01134876 -0.005006661
## Pclass -0.54949962 0.80373989 -0.338481036
## Age 0.10179465 -0.28034005 -0.065353318
## SibSp 0.15965104 -0.05487435 -0.035322499
## Parch 0.21622494 0.02852155 0.081629407
## Fare 1.00000000 -0.29916440 0.257306522
## Cluster -0.29916440 1.00000000 -0.245306699
## Survived 0.25730652 -0.24530670 1.000000000
Since there’s high mutli-collinearity between SibSp and Parch, we’ll combine them to create a new feature–N_Family
train_imputed$N_Family = train_imputed$SibSp+train_imputed$Parch+1
test_imputed$N_Family = test_imputed$SibSp+test_imputed$Parch+1
Drop Ticket feature due to noise in data, drop SibSp and parch features as we combined them to eliminate high multicollinearity
#Train
colnames(train_imputed)
## [1] "PassengerId" "Pclass" "Name"
## [4] "Sex" "Age" "SibSp"
## [7] "Parch" "Ticket" "Fare"
## [10] "Embarked" "Cluster" "Age_Range"
## [13] "Survival_Cluster" "Survived" "N_Family"
head(train_imputed)
## # A tibble: 6 x 15
## PassengerId Pclass Name Sex Age SibSp Parch Ticket Fare Embarked
## <dbl> <dbl> <chr> <chr> <dbl> <dbl> <dbl> <chr> <dbl> <chr>
## 1 1 3 Brau~ male 22 1 0 A/5 2~ 7.25 S
## 2 2 1 Cumi~ fema~ 38 1 0 PC 17~ 71.3 C
## 3 3 3 Heik~ fema~ 26 0 0 STON/~ 7.92 S
## 4 4 1 Futr~ fema~ 35 1 0 113803 53.1 S
## 5 5 3 Alle~ male 35 0 0 373450 8.05 S
## 6 6 3 Mora~ male 29.2 0 0 330877 8.46 Q
## # ... with 5 more variables: Cluster <int>, Age_Range <fct>,
## # Survival_Cluster <chr>, Survived <dbl>, N_Family <dbl>
final_Columns=c("PassengerId", "Survived", "Pclass", "Sex", "Age", "Fare", "Embarked", "N_Family", "Cluster", "Age_Range", "Survival_Cluster")
train_Final = train_imputed[,final_Columns]
#Test
test_Final = test_imputed[,final_Columns]
Log10 Age values to normalize distribution
#Train
g2 = ggplot(train_Final, aes(Age))+geom_histogram()
g2
g2 + scale_x_log10()
g2 + scale_x_sqrt()
ggplot(train_Final, aes(PassengerId, Age))+geom_point()
range(train_Final$Age)
train_Final$Age = sapply(train_Final$Age,log10)
train_Final$Age[train_Final$Age<0]=0
range(train_Final$Age)
train_Final = train_Final%>%
arrange(PassengerId)
#Test
range(test_Final$Age)
test_Final$Age = sapply(test_Final$Age, log10)
test_Final$Age[test_Final$Age<0]=0
range(test_Final$Age)
test_Final = test_Final%>%
arrange(PassengerId)
range(test_Final$Age)
mean(train_Final$Age)
map(train_Final$Age, sd)
Log10 Fare values to normalize distribution
#Train
g2 = ggplot(train_Final, aes(Fare))+geom_histogram()
g2
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
g2 + scale_x_log10()
## Warning: Transformation introduced infinite values in continuous x-axis
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
## Warning: Removed 15 rows containing non-finite values (stat_bin).
g2 + scale_x_sqrt()
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
ggplot(train_Final, aes(PassengerId, Fare))+geom_point()
range(train_Final$Fare)
## [1] 0.0000 512.3292
train_Final$Fare = sapply(train_Final$Fare,sqrt)
train_Final$Fare[train_Final$Fare<0]=0
range(train_Final$Fare)
## [1] 0.00000 22.63469
train_Final = train_Final%>%
arrange(PassengerId)
#Test
range(test_Final$Fare)
## [1] 0.0000 512.3292
test_Final$Fare = sapply(test_Final$Fare, sqrt)
test_Final$Fare[test_Final$Fare<0]=0
range(test_Final$Fare)
## [1] 0.00000 22.63469
test_Final = test_Final%>%
arrange(PassengerId)
range(test_Final$Fare)
## [1] 0.00000 22.63469
Ensure all atomic data types are properly labeled
# Train
sapply(train_Final, class)
## PassengerId Survived Pclass Sex
## "numeric" "numeric" "numeric" "character"
## Age Fare Embarked N_Family
## "numeric" "numeric" "character" "numeric"
## Cluster Age_Range Survival_Cluster
## "integer" "factor" "character"
train_Final$Sex = as.factor(train_Final$Sex)
class(train_Final$Embarked)
## [1] "character"
anyNA(train_Final)
## [1] FALSE
train_Final$Embarked = factor(train_Final$Embarked)
levels(train_Final$Embarked)
## [1] "C" "Q" "S"
train_Final$Survived = as.factor(train_Final$Survived)
train_Final$Pclass = as.factor(train_Final$Pclass)
train_Final$Cluster = as.factor(train_Final$Cluster)
train_Final$Survival_Cluster = as.factor(train_Final$Survival_Cluster)
sapply(train_Final, class)
## PassengerId Survived Pclass Sex
## "numeric" "factor" "factor" "factor"
## Age Fare Embarked N_Family
## "numeric" "numeric" "factor" "numeric"
## Cluster Age_Range Survival_Cluster
## "factor" "factor" "factor"
# Test
sapply(test_Final, class)
## PassengerId Survived Pclass Sex
## "numeric" "numeric" "numeric" "character"
## Age Fare Embarked N_Family
## "numeric" "numeric" "character" "numeric"
## Cluster Age_Range Survival_Cluster
## "integer" "factor" "character"
test_Final$Sex = as.factor(test_Final$Sex)
test_Final$Embarked = factor(test_Final$Embarked, levels = c("C","Q","S"))
test_Final$Survived = ifelse(test_Final$Survived==1, "S", "D")
test_Final$Survived = factor(test_Final$Survived, levels = c("D","S"))
test_Final$Pclass = as.factor(test_Final$Pclass)
test_Final$Cluster = as.factor(test_Final$Cluster)
test_Final$Survival_Cluster = as.factor(test_Final$Survival_Cluster)
sapply(test_Final, class)
## PassengerId Survived Pclass Sex
## "numeric" "factor" "factor" "factor"
## Age Fare Embarked N_Family
## "numeric" "numeric" "factor" "numeric"
## Cluster Age_Range Survival_Cluster
## "factor" "factor" "factor"
sapply(train_Final, function(x) sum(is.na(x)))
## PassengerId Survived Pclass Sex
## 0 0 0 0
## Age Fare Embarked N_Family
## 0 0 0 0
## Cluster Age_Range Survival_Cluster
## 0 0 0
Remove outliers from each feature
Iteratively establish best outlier threshold with the outlier_stat object and model performance
outlier_stat = 4
# Review Feature Dispersion
boxplot(train_Final[,"Age"], col = "blue", main = "Features Boxplot")
quantile(train_Final$Age)
## 0% 25% 50% 75% 100%
## 0.42000 21.00000 28.01129 37.00000 80.00000
# Quantify Upper & Lower Thresholds
sd_Age = sd(train_Final$Age)
mean_Age = mean(train_Final$Age)
upper_Age = mean_Age + sd_Age *outlier_stat
lower_Age = mean_Age - sd_Age *outlier_stat
# Filter Outliers
outliers_Age = train_Final%>%
filter(Age > (mean_Age + outlier_stat*sd_Age) | Age < (mean_Age - outlier_stat*sd_Age))
nrow(outliers_Age) / nrow(train_Final)
## [1] 0
outliers_Age
## # A tibble: 0 x 11
## # ... with 11 variables: PassengerId <dbl>, Survived <fct>, Pclass <fct>,
## # Sex <fct>, Age <dbl>, Fare <dbl>, Embarked <fct>, N_Family <dbl>,
## # Cluster <fct>, Age_Range <fct>, Survival_Cluster <fct>
Iteratively establish best outlier threshold with the outlier_stat object and model performance
# Review Feature Dispersion
boxplot(train_Final[,"Fare"], col = "blue", main = "Features Boxplot")
# Quantify Upper & Lower Thresholds
sd_Fare = sd(train_Final$Fare)
mean_Fare = mean(train_Final$Fare)
upper_Fare = mean_Fare + sd_Fare *outlier_stat
lower_Fare = mean_Fare - sd_Fare *outlier_stat
# Filter Outliers
outliers_Fare = train_Final%>%
filter(Fare > (mean_Fare + outlier_stat*sd_Fare) | Fare < (mean_Fare - outlier_stat*sd_Fare))
nrow(outliers_Fare) / nrow(train_Final)
## [1] 0.003367003
outliers_Fare
## # A tibble: 3 x 11
## PassengerId Survived Pclass Sex Age Fare Embarked N_Family Cluster
## <dbl> <fct> <fct> <fct> <dbl> <dbl> <fct> <dbl> <fct>
## 1 259 1 1 fema~ 35 22.6 C 1 3
## 2 680 1 1 male 36 22.6 C 2 3
## 3 738 1 1 male 35 22.6 C 1 3
## # ... with 2 more variables: Age_Range <fct>, Survival_Cluster <fct>
Iteratively establish best outlier threshold with the outlier_stat object and model performance
# Review Feature Dispersion
boxplot(train_Final[,"N_Family"], col = "blue", main = "Features Boxplot")
# Quantify Upper & Lower Thresholds
sd_Family = sd(train_Final$N_Family)
mean_Family = mean(train_Final$N_Family)
upper_Family = mean_Family + sd_Family *outlier_stat
lower_Family = mean_Family - sd_Family *outlier_stat
# Filter Outliers
outliers_Family = train_Final%>%
filter(N_Family > (mean_Family + outlier_stat*sd_Family) | N_Family < (mean_Family - outlier_stat*sd_Family))
nrow(outliers_Family) / nrow(train_Final)
## [1] 0.007856341
outliers_Family
## # A tibble: 7 x 11
## PassengerId Survived Pclass Sex Age Fare Embarked N_Family Cluster
## <dbl> <fct> <fct> <fct> <dbl> <dbl> <fct> <dbl> <fct>
## 1 160 0 3 male 14.5 8.34 S 11 4
## 2 181 0 3 fema~ 15.9 8.34 S 11 4
## 3 202 0 3 male 14.5 8.34 S 11 4
## 4 325 0 3 male 14.5 8.34 S 11 4
## 5 793 0 3 fema~ 15.9 8.34 S 11 4
## 6 847 0 3 male 14.5 8.34 S 11 4
## 7 864 0 3 fema~ 15.9 8.34 S 11 4
## # ... with 2 more variables: Age_Range <fct>, Survival_Cluster <fct>
# Combine All Outliers
outliers_Total = bind_rows(outliers_Age, outliers_Family, outliers_Fare)
# List Combined Outliers and Individual Outliers
outliers_List = list(outliers_Total = outliers_Total, outliers_Age = outliers_Age, outliers_Family = outliers_Family, outliers_Fare = outliers_Fare)
# Quantify Outlier Percentage
(outlier_Percentage = map(outliers_List, function(x){ paste(round((nrow(x)/nrow(train_Final)*100), digits = 2), "%",sep= "")}))
## $outliers_Total
## [1] "1.12%"
##
## $outliers_Age
## [1] "0%"
##
## $outliers_Family
## [1] "0.79%"
##
## $outliers_Fare
## [1] "0.34%"
# Row Count Before Removing and After Removing Outliers
nrow(train_Final)
## [1] 891
train_Final = train_Final[-outliers_Total$PassengerId,]
nrow(train_Final)
## [1] 881
# Boxplot of Features
# Age
boxplot(train_Final[,"Age"], col = "blue", main = "Features Boxplot")
# Fare
boxplot(train_Final[,"Fare"], col = "blue", main = "Features Boxplot")
# N_Family
boxplot(train_Final[,"N_Family"], col = "blue", main = "Features Boxplot")
sapply(train_Final, function(x) sum(is.na(x)))
## PassengerId Survived Pclass Sex
## 0 0 0 0
## Age Fare Embarked N_Family
## 0 0 0 0
## Cluster Age_Range Survival_Cluster
## 0 0 0
sapply(test_Final, function(x) sum(is.na(x)))
## PassengerId Survived Pclass Sex
## 0 0 0 0
## Age Fare Embarked N_Family
## 0 0 0 0
## Cluster Age_Range Survival_Cluster
## 0 0 0
Logistic Regression Assumptions:
1. The outcome is binary
2. Linear relationship between logit of response and each predictor variable. 3. No influential values (extreme or outliers) in the continuous predictors
4. No high intercorrelation (multicollinearity) among the predictors
Question: Is our response variable binary?
Answer: Yes
class(train_Final$Survived)
## [1] "factor"
levels(train_Final$Survived)
## [1] "0" "1"
Question: Are relationships linear between logit and features? Answer: Fairly linear, see below.
\[logit(p) = log(p/(1-p))\]
Model regression
logitmodel = glm(Survived~Age+N_Family+Sex+Pclass+Fare, data = train_Final, family = binomial(link = 'logit'))
summary(logitmodel)
##
## Call:
## glm(formula = Survived ~ Age + N_Family + Sex + Pclass + Fare,
## family = binomial(link = "logit"), data = train_Final)
##
## Deviance Residuals:
## Min 1Q Median 3Q Max
## -2.7102 -0.5988 -0.4207 0.6147 2.4379
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 3.992211 0.610536 6.539 6.20e-11 ***
## Age -0.042550 0.008157 -5.216 1.82e-07 ***
## N_Family -0.259327 0.080105 -3.237 0.00121 **
## Sexmale -2.724904 0.198960 -13.696 < 2e-16 ***
## Pclass2 -1.028346 0.329698 -3.119 0.00181 **
## Pclass3 -2.191533 0.361969 -6.054 1.41e-09 ***
## Fare 0.063123 0.055504 1.137 0.25542
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for binomial family taken to be 1)
##
## Null deviance: 1174.13 on 880 degrees of freedom
## Residual deviance: 781.13 on 874 degrees of freedom
## AIC: 795.13
##
## Number of Fisher Scoring iterations: 5
Consider confidence intervals on each predictor
confint(logitmodel)
## Waiting for profiling to be done...
## 2.5 % 97.5 %
## (Intercept) 2.80893216 5.20605369
## Age -0.05887813 -0.02685891
## N_Family -0.42045739 -0.10566406
## Sexmale -3.12392607 -2.34306860
## Pclass2 -1.67808420 -0.38331949
## Pclass3 -2.90650617 -1.48455044
## Fare -0.04391067 0.17453379
Predict Test set response values with trained glm model
probabilities = predict(logitmodel, newdata = test_Final, type = "response")
head(probabilities, n =10)
## 1 2 3 4 5 6
## 0.07763633 0.36567478 0.07856576 0.10464773 0.57636410 0.16973159
## 7 8 9 10
## 0.60806930 0.21325896 0.72014305 0.09232651
Select continuous variables to compare with logit values
mydata = test_Final%>%
select_if(is.numeric)
head(mydata)
## # A tibble: 6 x 4
## PassengerId Age Fare N_Family
## <dbl> <dbl> <dbl> <dbl>
## 1 892 34.5 2.80 1
## 2 893 47 2.65 2
## 3 894 62 3.11 1
## 4 895 27 2.94 1
## 5 896 22 3.51 3
## 6 897 14 3.04 1
Store continuous features names for reference
predictors = colnames(mydata)
print(predictors)
## [1] "PassengerId" "Age" "Fare" "N_Family"
Tidy data by gathering data, so each variable forms a column, each observation a row, and each type of observational unit a table
mydata_logit = mydata%>%
mutate(logit = log(probabilities/(1-probabilities)))%>%
gather(Features, Values, -c(PassengerId, logit))
head(mydata_logit)
## # A tibble: 6 x 4
## PassengerId logit Features Values
## <dbl> <dbl> <chr> <dbl>
## 1 892 -2.47 Age 34.5
## 2 893 -0.551 Age 47
## 3 894 -2.46 Age 62
## 4 895 -2.15 Age 27
## 5 896 0.308 Age 22
## 6 897 -1.59 Age 14
unique(mydata_logit$Features)
## [1] "Age" "Fare" "N_Family"
As the Feature values increase from 0 onwards, different trends emerge, some being less linear than others, but all-in-all, none necessarily disproving the assumption of linearity between the Feature and logit values. The probability of survival increases with the Fare one paid to board the ship, and likewise, with the young and old in Age, and smaller families too.
ggplot(mydata_logit, aes(Values, logit))+geom_point(size = 0.5, alpha = 0.5)+geom_smooth(method = "loess")+theme_bw()+scale_y_continuous(name = "logit")+scale_x_continuous()+(facet_wrap(~Features, scales = "free"))
Question: Is our data free of outliers or high-leverage observations? Answer:
PassengerId’s 58, 513, and 665 pose as potential influential observations
plot(logitmodel, which = 4, id.n = 3)
We don’t have any statistically significant cooks distance observations in our data, including PassengerId 58, 513, and 665 as seen in the above chart, while confirmed in the filter below.
# logitmodel cooks distance
cooks_d=cooks.distance(logitmodel)
# logitmodel cooks distance statistic
cooks_d_threshold=sqrt(((length(names(coef(logitmodel)))+1))/(length(train_Final$PassengerId)-length(names(coef(logitmodel)))-1))
# identify significant cooks distance observations
sum(cooks_d > cooks_d_threshold)
## [1] 0
In the plot below, we see standardized residuals on the y-axis, leverage values on the x-axis, and cooks distance visualized by the size of circles for each observation. Remember, residuals measure the distance between our fitted and actual y-values and H-Hats measure the distance between our predictors x’s values, the further apart, the more leverage. The combination of our y and x residuals feed into the size of the cooks distance, and thus, the circle’s size–the bigger, the more extreme. PassengerId 665 is the most alerting observation, but nonetheless, not statistically significant.
influencePlot(logitmodel, main = "Influence Plot", sub="Circle size is proportional to Cook's Distance", scale = 6,id=list(col=carPalette()))
## StudRes Hat CookD
## 28 -1.170238 0.056109401 0.008360028
## 258 2.307965 0.011520577 0.020799362
## 294 -2.738435 0.003993490 0.022057242
## 334 2.447866 0.002610839 0.006946205
## 553 -1.374897 0.055924930 0.013123538
With the augment() function, we display the logitmodel’s fitted statistics. We add an index to our output with the mutate() function to reference while we’re tidying our data.
options(scipen=0)
model_data = augment(logitmodel)%>%
mutate(PassengerId = 1:nrow(train_Final))%>%
arrange(desc(.std.resid))
model_data%>%
arrange(desc(.cooksd) & desc(.std.resid))%>%
filter(Sex == "female")
## # A tibble: 310 x 14
## Survived Age N_Family Sex Pclass Fare .fitted .se.fit .resid
## <fct> <dbl> <dbl> <fct> <fct> <dbl> <dbl> <dbl> <dbl>
## 1 1 38 7 fema~ 3 5.60 -1.28 0.415 1.75
## 2 1 63 1 fema~ 3 3.10 -0.944 0.346 1.60
## 3 1 17 7 fema~ 3 2.82 -0.560 0.421 1.42
## 4 1 33 4 fema~ 3 3.98 -0.389 0.226 1.35
## 5 1 54 5 fema~ 2 4.80 -0.328 0.395 1.32
## 6 1 35 3 fema~ 3 4.5 -0.182 0.196 1.26
## 7 1 31 3 fema~ 3 4.53 -0.0104 0.180 1.18
## 8 1 36 2 fema~ 3 4.17 0.0135 0.190 1.17
## 9 1 24 4 fema~ 3 4.39 0.0192 0.197 1.17
## 10 1 29 3 fema~ 3 3.90 0.0352 0.174 1.16
## # ... with 300 more rows, and 5 more variables: .hat <dbl>, .sigma <dbl>,
## # .cooksd <dbl>, .std.resid <dbl>, PassengerId <int>
head(model_data, n = 50)
## # A tibble: 50 x 14
## Survived Age N_Family Sex Pclass Fare .fitted .se.fit .resid
## <fct> <dbl> <dbl> <fct> <fct> <dbl> <dbl> <dbl> <dbl>
## 1 1 45 1 male 3 2.84 -2.92 0.232 2.44
## 2 1 44 1 male 3 2.82 -2.88 0.226 2.42
## 3 1 39 1 male 3 2.82 -2.67 0.201 2.34
## 4 1 3 7 male 3 5.60 -2.51 0.408 2.28
## 5 1 62 1 male 2 3.24 -2.45 0.324 2.25
## 6 1 25.0 3 male 3 4.82 -2.46 0.196 2.26
## 7 1 32.3 1 male 3 2.78 -2.38 0.175 2.22
## 8 1 32 1 male 3 2.80 -2.37 0.175 2.22
## 9 1 32 1 male 3 2.82 -2.37 0.175 2.22
## 10 1 32 1 male 3 2.84 -2.37 0.175 2.22
## # ... with 40 more rows, and 5 more variables: .hat <dbl>, .sigma <dbl>,
## # .cooksd <dbl>, .std.resid <dbl>, PassengerId <int>
Question: Are the residuals homoscedastic? Answer: Yes, our residuals are homoscedastic as they are random and uncorrelated.
ggplot(model_data, aes(PassengerId, .std.resid))+
geom_point(aes(color = Survived), alpha = .5) +
theme_bw() + scale_y_continuous(limits = c(-4,4))
Question: Are any observations standardized residuals greater than 3 standard deviations from the fitted prediction? Answer: No, as seen below, no observations have a standard deviation greater than 3 deviations. However, there are some observations that are beyond 2 standard deviations which may have some significance.
model_data%>%
filter(abs(.std.resid)>3)
## # A tibble: 0 x 14
## # ... with 14 variables: Survived <fct>, Age <dbl>, N_Family <dbl>,
## # Sex <fct>, Pclass <fct>, Fare <dbl>, .fitted <dbl>, .se.fit <dbl>,
## # .resid <dbl>, .hat <dbl>, .sigma <dbl>, .cooksd <dbl>,
## # .std.resid <dbl>, PassengerId <int>
Question: Is multicollinearity present between our predictor variables? Answer: No, based on our VIF and correlation matrix, multi-collinearity is not present amongst our selected predictor variables.
Question: Any VIF’s greater than 5 or 10? Answer: No, the predictors in our model don’t suffer from multicollinearity.
vif(logitmodel)
## GVIF Df GVIF^(1/(2*Df))
## Age 1.504370 1 1.226528
## N_Family 1.546865 1 1.243730
## Sex 1.178098 1 1.085402
## Pclass 2.841143 2 1.298295
## Fare 2.492724 1 1.578836
vif(logitmodel)>5
## GVIF Df GVIF^(1/(2*Df))
## Age FALSE FALSE FALSE
## N_Family FALSE FALSE FALSE
## Sex FALSE FALSE FALSE
## Pclass FALSE FALSE FALSE
## Fare FALSE FALSE FALSE
The highest correlation value we observe is between Fare and N_Family, but at .39, it’s aways away from perfect correlation at 1, so these two aren’t highly correlated
pairs(mydata)
cor(mydata, use="complete.obs", method="kendall")
## PassengerId Age Fare N_Family
## PassengerId 1.000000000 -0.01929310 0.01194415 0.006609461
## Age -0.019293100 1.00000000 0.17281814 -0.066981179
## Fare 0.011944154 0.17281814 1.00000000 0.390756534
## N_Family 0.006609461 -0.06698118 0.39075653 1.000000000
colnames(train_Final)
## [1] "PassengerId" "Survived" "Pclass"
## [4] "Sex" "Age" "Fare"
## [7] "Embarked" "N_Family" "Cluster"
## [10] "Age_Range" "Survival_Cluster"
train_Final_numeric = train_Final[, c("Pclass", "Age", "Fare", "N_Family", "Cluster")]
head(train_Final)
## # A tibble: 6 x 11
## PassengerId Survived Pclass Sex Age Fare Embarked N_Family Cluster
## <dbl> <fct> <fct> <fct> <dbl> <dbl> <fct> <dbl> <fct>
## 1 1 0 3 male 22 2.69 S 2 6
## 2 2 1 1 fema~ 38 8.44 C 2 2
## 3 3 1 3 fema~ 26 2.82 S 1 6
## 4 4 1 1 fema~ 35 7.29 S 2 2
## 5 5 0 3 male 35 2.84 S 1 6
## 6 6 0 3 male 29.2 2.91 Q 1 6
## # ... with 2 more variables: Age_Range <fct>, Survival_Cluster <fct>
#k_titanic = kmeans(train_Final_numeric, 10, iter.max = 10, nstart = 1, algorithm = c("Hartigan-Wong"), trace=FALSE)
#k_titanic_cluster = k_titanic$cluster
#train_Final_cluster = mutate(train_Final, k_titanic_cluster)
train_Final%>%
ggplot(aes(x = Age, y = Fare, color = Survived))+geom_jitter() + facet_grid(rows = vars(Sex, Embarked), cols=vars(Pclass, Cluster))
train_Final%>%
ggplot(aes(x = Age, y = Fare, color = Survived, shape = factor(Cluster)))+geom_jitter() + facet_grid(rows = vars(Sex, Embarked), cols=vars(Survival_Cluster, Age_Range))+labs(title="Training Data Class & Cluster Classification")
test_Final%>%
ggplot(aes(x = Age_Range, y = Fare, shape = factor(Cluster)))+geom_jitter() + facet_grid(rows = vars(Sex, Embarked), cols=vars(Survival_Cluster, Age_Range))+labs(title="Kaggle Test SetSurvival Cluster & Age Range Classification")
# Multiway table
train_Final %>%
group_by(Sex, Pclass, Embarked, Cluster) %>%
mutate(Total = n()) %>%
count(Sex, Pclass, Embarked, Cluster, Survived, Total)%>%
ungroup()%>%
spread(Survived,n, fill = 0)%>%
select(-matches("Total"),Total)
## # A tibble: 47 x 7
## Sex Pclass Embarked Cluster `0` `1` Total
## <fct> <fct> <fct> <fct> <dbl> <dbl> <int>
## 1 female 1 C 1 0 12 12
## 2 female 1 C 2 1 22 23
## 3 female 1 C 3 0 8 8
## 4 female 1 C 5 0 1 1
## 5 female 1 Q 2 0 1 1
## 6 female 1 S 1 0 12 12
## 7 female 1 S 2 0 19 19
## 8 female 1 S 3 2 11 13
## 9 female 1 S 5 0 4 4
## 10 female 2 C 1 0 5 5
## # ... with 37 more rows
Establish the models training Cross-Validation technique, hyperparameter tuning configuration, feature formula, and machine learning algorithms
Uncorrelate any potential correlation between sequential observations i.e. PassengerId’s by shuffling them
set.seed(1)
# Get the number of observations
n_obs_Filtered = nrow(train_Final)
# Shuffle row indices: permuted_rows
permuted_rows = sample(n_obs_Filtered)
# Randomly order data: train_imputed
train_Final = train_Final[permuted_rows,]
# Partition Data into Training and Test sets
partition_index = createDataPartition(train_Final$PassengerId, p = .8, list = FALSE)
train_Final_Train = train_Final[partition_index,]
train_Final_Test = train_Final[-partition_index,]
# Change atomic data type for Survived in train & test
train_Final_Train$Survived = ifelse(train_Final_Train$Survived==1, "S", "D")
train_Final_Train$Survived = factor(train_Final_Train$Survived)
levels(train_Final_Train$Survived)
## [1] "D" "S"
train_Final_Test$Survived = ifelse(train_Final_Test$Survived==1, "S", "D")
train_Final_Test$Survived = factor(train_Final_Test$Survived)
levels(train_Final_Test$Survived)
## [1] "D" "S"
Create folds for cross-validation sampling to identify optimal tuning for models hyperparameters
set.seed(1)
# Examine datasets distribution
table(train_Final_Train$Survived) / nrow(train_Final_Train)
##
## D S
## 0.6198582 0.3801418
# Compare Class Distribution
myFolds_Filtered = createFolds(train_Final_Train$Survived, k = 8)
# Compare class distribution, to ensure each individual fold represents the overal population adequately, ensuring proportion equality amongst the response classes, as such:
i = myFolds_Filtered$Fold1
table(train_Final_Train$Survived[i]) / length(i)
##
## D S
## 0.625 0.375
Create objects to store model parameters for efficient coding and practicality
colnames(train_Final)
## [1] "PassengerId" "Survived" "Pclass"
## [4] "Sex" "Age" "Fare"
## [7] "Embarked" "N_Family" "Cluster"
## [10] "Age_Range" "Survival_Cluster"
levels(train_Final$Age_Range)
## [1] "0-9" "9-18" "18-27" "27-36" "36-45" "45-54" "54-62" "62-71" "71-80"
formula_titanic = as.formula(Survived~Survival_Cluster+Sex+Pclass+Age+Age_Range+Cluster+Embarked+N_Family+Fare)
preProcess_titanic = c("center", "scale", "pca")
tuneLength_titanic = 5
metric_titanic = "Accuracy"
maximize_titanic = TRUE
method_titanic = list(glmboost = "glmboost", rf = "ranger", xgboost = "xgbTree", nnet = "nnet")
Create different types of training control configurations to optimize your model sample tuning ability
# Grid trainControl
myControl_Grid = trainControl(
method = "repeatedcv",
number = 5,
repeats = 3,
search = "grid",
summaryFunction = defaultSummary, #IMPORTANT THRESHOLD!
classProbs = TRUE,
verboseIter = TRUE,
savePredictions = TRUE,
allowParallel = TRUE,
index = myFolds_Filtered
)
# RANDOM trainControl Hyperparameter Selection
myControl_Random = trainControl(
method = "repeatedcv",
number = 5,
repeats = 3,
search = "random",
#tuneLength = 100,
summaryFunction = defaultSummary,
classProbs = TRUE,
returnData = TRUE,
verboseIter = TRUE,
savePredictions = TRUE,
allowParallel = TRUE,
index = myFolds_Filtered
)
# Cross-Validation Hyperparameter Selection
myControl_CV = trainControl(
method = "cv",
number = 5,
summaryFunction = defaultSummary,
classProbs = TRUE,
returnData = TRUE,
verboseIter = TRUE,
savePredictions = "final",
#tuneLength = 100,
allowParallel = TRUE,
index = myFolds_Filtered
)
# myControl has previously been created
# getModelInfo() to see Hyper-Paramater
Develop a list of models with selected parameters and a preferable train control sampling technique
set.seed(1)
tic()
caret_Model_List = caretList(
formula_titanic,
data = train_Final_Train,
trControl = myControl_CV,
metric = "Accuracy",
tuneList = list(
caretModelSpec(method = method_titanic$glmboost, tuneLength = tuneLength_titanic, preProcess=c("center","scale")),
caretModelSpec(method = method_titanic$rf, tuneLength = tuneLength_titanic, preProcess=c("center","scale")),
caretModelSpec(method = method_titanic$xgboost, tuneLength = tuneLength_titanic, preProcess=c("center","scale")),
caretModelSpec(method = method_titanic$nnet, tuneLength = tuneLength_titanic, preProcess=c("center","scale"))
),
continue_on_fail = FALSE
)
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
## Warning in preProcess.default(thresh = 0.95, k = 5, freqCut = 19, uniqueCut
## = 10, : These variables have zero variances: Age_Range62-71, Age_Range71-80
toc()
Ensemble your list of models to be optimally weighted for peak predictive performance
set.seed(1)
ensemble_Model = caretEnsemble(caret_Model_List,
metric = "Accuracy"
)
summary(ensemble_Model)
Stack the list of models to glean signal from residuals for peak predictive performance
set.seed(1)
stack_Model = caretStack(caret_Model_List,
method = "glmnet",
metric = "Accuracy"
)
summary(stack_Model)
Evaluate the models’ performance on the cross-validated folds
Visualize the models predicted performance on the cross-validated folds.
# Resample Models
resamples = resamples(caret_Model_List)
# Extract data from resamples object
resamples_list=map(resamples$values, ~.x)
bind_resamples = bind_rows(resamples_list)
gather_resamples = gather(bind_resamples, Model, Accuracy, -Resample)
# Filter for Kappa
Kappa_resamples = gather_resamples%>%
filter(str_detect(Model,"Kappa"))
# Filter for Accuracy
Accuracy_resamples = gather_resamples%>%
filter(str_detect(Model,"Accuracy"))
# Change Accuracy column name to Kappa
colnames(Kappa_resamples) = c("Resample", "Model", "Kappa")
# Seperate the Model column into Model and Stat
Accuracy_resamples = separate(Accuracy_resamples, Model, c("Model", "Stat"), by = "~")
Kappa_resamples = separate(Kappa_resamples, Model, c("Model", "Stat"), by = "~")
# Drop Stat Column
Accuracy_resamples = Accuracy_resamples[,-3]
Kappa_resamples = Kappa_resamples[,-3]
# Join Accuracy and Kappa Data Frames
join_resamples = left_join(Accuracy_resamples, Kappa_resamples, by = c("Resample", "Model"))
# Plot Accuracy
ggplot(join_resamples, aes(x = Accuracy, y = reorder(Model, Accuracy, max), fill = Model))+
geom_density_ridges2(alpha = .6, scale = 6, jittered_points=TRUE, point_size = 4, point_shape="|", position = position_points_jitter(height=0), scale = .95)+theme_bw()+ggtitle("Model Training CV Accuracy Distribution") + theme_ridges(center = TRUE)
## Warning: Duplicated aesthetics after name standardisation: scale
## Picking joint bandwidth of 0.00892
# Plot Kappa
ggplot(join_resamples,aes(x = Kappa, y = reorder(Model, Kappa, max), fill = Model))+
geom_density_ridges2(alpha = .6, scale = 6, jittered_points=TRUE, point_size = 4, point_shape="|", position = position_points_jitter(height=0), scale = .95)+theme_bw()+ggtitle("Model Training CV Kappa Distribution") + theme_ridges(center = TRUE)
## Warning: Duplicated aesthetics after name standardisation: scale
## Picking joint bandwidth of 0.0181
Compare models’ performance on cross-validated folds
bwplot(resamples, metric = "Accuracy", main = "Bw plot: Training CV")
dotplot(resamples, metric = "Accuracy", main = "Dot plot: Training CV")
densityplot(resamples, metric = "Kappa", auto.key = TRUE, main = "Density plot: Training CV")
densityplot(resamples, metric = "Accuracy", auto.key = TRUE, main = "Density plot: Training CV")
modelCor(resamples)
## glmboost ranger xgbTree nnet
## glmboost 1.0000000 0.4659439 0.8773413 0.3567947
## ranger 0.4659439 1.0000000 0.5617690 0.7065752
## xgbTree 0.8773413 0.5617690 1.0000000 0.2399471
## nnet 0.3567947 0.7065752 0.2399471 1.0000000
summary(resamples)
##
## Call:
## summary.resamples(object = resamples)
##
## Models: glmboost, ranger, xgbTree, nnet
## Number of resamples: 8
##
## Accuracy
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## glmboost 0.7646104 0.7806209 0.7866983 0.7868243 0.7948223 0.8055105 0
## ranger 0.7402597 0.7623697 0.7858906 0.7799312 0.7927983 0.8152350 0
## xgbTree 0.7386364 0.7778677 0.7803897 0.7797273 0.7863252 0.8038898 0
## nnet 0.7110390 0.7368396 0.7514175 0.7521713 0.7642966 0.7974068 0
##
## Kappa
## Min. 1st Qu. Median Mean 3rd Qu. Max. NA's
## glmboost 0.4991364 0.5169610 0.5378056 0.5379388 0.5541468 0.5828309 0
## ranger 0.4228968 0.4561210 0.5180724 0.5045972 0.5388055 0.5815058 0
## xgbTree 0.4438687 0.5185415 0.5203191 0.5217961 0.5341207 0.5667965 0
## nnet 0.3763480 0.4491735 0.4704192 0.4685601 0.4858760 0.5635529 0
resamples
##
## Call:
## resamples.default(x = caret_Model_List)
##
## Models: glmboost, ranger, xgbTree, nnet
## Number of resamples: 8
## Performance metrics: Accuracy, Kappa
## Time estimates for: everything, final model fit
join_resamples%>%
ggplot(aes(x = reorder(Model, Accuracy, max), y = Accuracy, color = Model, size = Kappa)) + geom_jitter(width = .1, alpha = .5) + theme_bw() + ggtitle("Model Training CV Accuracy by Model")
join_resamples%>%
ggplot(aes(x = Resample, y = Accuracy, color = Model, size = Kappa)) + geom_jitter(width = .1, alpha = .5) + theme_bw() + ggtitle("Model Training CV Accuracy by Fold")
Determine which variables each model evaluates to be the most important when predicting the response
ggplot(varImp(caret_Model_List$glmboost))+theme_bw()+ggtitle(labs(title = "GLMboost CV Variable Importance"))
##
## NOTE: Coefficients from a Binomial model are half the size of coefficients
## from a model fitted via glm(... , family = 'binomial').
## See Warning section in ?coef.mboost
#ggplot(varImp(caret_Model_List$ranger))+theme_bw()+ggtitle(labs(title = "Ranger CV Variable Importance"))
ggplot(varImp(caret_Model_List$xgbTree))+theme_bw()+ggtitle(labs(title = "XgbTree CV Variable Importance"))
ggplot(varImp(caret_Model_List$nnet))+theme_bw()+ggtitle(labs(title = "NNET CV Variable Importance"))
#plot(varImp(caret_Model_List$naive_bayes))+theme_bw()+ggtitle(labs(title = "Naive Bayes CV Variable Importance"))
Predict out-of-sample outcomes with the fully trained and hypertuned models
Combine the ensemble and stack models with the list of models to predict our out-of-sample outcomes
options(scipen=3)
# List of Trained Models
trained_model_List = list(
ensemble = ensemble_Model,
stack = stack_Model,
glmboost = caret_Model_List$glmboost,
ranger = caret_Model_List$ranger,
xgbTree = caret_Model_List$xgbTree,
nnet = caret_Model_List$nnet
)
# Predicted vs Actual Confusion Matrix
predict_Models_list_oos = lapply(trained_model_List, predict, newdata = train_Final_Test, type = "raw")
predict_Models_df_oos = map_df(predict_Models_list_oos, ~.x)
confusionMatrix_Models_oos = map(.x = predict_Models_df_oos, .f = confusionMatrix, train_Final_Test$Survived)
print(confusionMatrix_Models_oos)
## $ensemble
## Confusion Matrix and Statistics
##
## Reference
## Prediction D S
## D 92 16
## S 13 55
##
## Accuracy : 0.8352
## 95% CI : (0.772, 0.8868)
## No Information Rate : 0.5966
## P-Value [Acc > NIR] : 7.07e-12
##
## Kappa : 0.6553
##
## Mcnemar's Test P-Value : 0.7103
##
## Sensitivity : 0.8762
## Specificity : 0.7746
## Pos Pred Value : 0.8519
## Neg Pred Value : 0.8088
## Prevalence : 0.5966
## Detection Rate : 0.5227
## Detection Prevalence : 0.6136
## Balanced Accuracy : 0.8254
##
## 'Positive' Class : D
##
##
## $stack
## Confusion Matrix and Statistics
##
## Reference
## Prediction D S
## D 93 18
## S 12 53
##
## Accuracy : 0.8295
## 95% CI : (0.7657, 0.8819)
## No Information Rate : 0.5966
## P-Value [Acc > NIR] : 2.382e-11
##
## Kappa : 0.641
##
## Mcnemar's Test P-Value : 0.3613
##
## Sensitivity : 0.8857
## Specificity : 0.7465
## Pos Pred Value : 0.8378
## Neg Pred Value : 0.8154
## Prevalence : 0.5966
## Detection Rate : 0.5284
## Detection Prevalence : 0.6307
## Balanced Accuracy : 0.8161
##
## 'Positive' Class : D
##
##
## $glmboost
## Confusion Matrix and Statistics
##
## Reference
## Prediction D S
## D 93 17
## S 12 54
##
## Accuracy : 0.8352
## 95% CI : (0.772, 0.8868)
## No Information Rate : 0.5966
## P-Value [Acc > NIR] : 7.07e-12
##
## Kappa : 0.6537
##
## Mcnemar's Test P-Value : 0.4576
##
## Sensitivity : 0.8857
## Specificity : 0.7606
## Pos Pred Value : 0.8455
## Neg Pred Value : 0.8182
## Prevalence : 0.5966
## Detection Rate : 0.5284
## Detection Prevalence : 0.6250
## Balanced Accuracy : 0.8231
##
## 'Positive' Class : D
##
##
## $ranger
## Confusion Matrix and Statistics
##
## Reference
## Prediction D S
## D 94 22
## S 11 49
##
## Accuracy : 0.8125
## 95% CI : (0.7469, 0.8673)
## No Information Rate : 0.5966
## P-Value [Acc > NIR] : 7.227e-10
##
## Kappa : 0.6004
##
## Mcnemar's Test P-Value : 0.08172
##
## Sensitivity : 0.8952
## Specificity : 0.6901
## Pos Pred Value : 0.8103
## Neg Pred Value : 0.8167
## Prevalence : 0.5966
## Detection Rate : 0.5341
## Detection Prevalence : 0.6591
## Balanced Accuracy : 0.7927
##
## 'Positive' Class : D
##
##
## $xgbTree
## Confusion Matrix and Statistics
##
## Reference
## Prediction D S
## D 90 17
## S 15 54
##
## Accuracy : 0.8182
## 95% CI : (0.7531, 0.8722)
## No Information Rate : 0.5966
## P-Value [Acc > NIR] : 2.406e-10
##
## Kappa : 0.6205
##
## Mcnemar's Test P-Value : 0.8597
##
## Sensitivity : 0.8571
## Specificity : 0.7606
## Pos Pred Value : 0.8411
## Neg Pred Value : 0.7826
## Prevalence : 0.5966
## Detection Rate : 0.5114
## Detection Prevalence : 0.6080
## Balanced Accuracy : 0.8089
##
## 'Positive' Class : D
##
##
## $nnet
## Confusion Matrix and Statistics
##
## Reference
## Prediction D S
## D 92 20
## S 13 51
##
## Accuracy : 0.8125
## 95% CI : (0.7469, 0.8673)
## No Information Rate : 0.5966
## P-Value [Acc > NIR] : 7.227e-10
##
## Kappa : 0.6041
##
## Mcnemar's Test P-Value : 0.2963
##
## Sensitivity : 0.8762
## Specificity : 0.7183
## Pos Pred Value : 0.8214
## Neg Pred Value : 0.7969
## Prevalence : 0.5966
## Detection Rate : 0.5227
## Detection Prevalence : 0.6364
## Balanced Accuracy : 0.7973
##
## 'Positive' Class : D
##
# Model Prediction Accuracy Comparison
predict_Models_table_oos = map(predict_Models_df_oos, table, train_Final_Test$Survived)
predict_Models_true_oos = map(map(predict_Models_table_oos, diag), sum)
predict_Models_sum_oos = map(predict_Models_table_oos, sum)
predict_Models_accuracy_oos = mapply('/', predict_Models_true_oos, predict_Models_sum_oos)
predict_Models_accuracy_oos = round(predict_Models_accuracy_oos, digits = 3)
predict_Models_accuracy_oos
## ensemble stack glmboost ranger xgbTree nnet
## 0.835 0.830 0.835 0.812 0.818 0.812
Visualize the seperation of predicted probabilities by each model
# Kaggle Probabilities
probabilities_oos = predict(trained_model_List, newdata = train_Final_Test, type = "prob")
# Ensemble Model
train_Final_Test %>%
ggplot(aes(x = Age, y = probabilities_oos$ensemble, shape = as.factor(Survived), size = N_Family, color = Sex)) + geom_point() + geom_smooth(method = "glm", method.args =list(family = "binomial"), se = TRUE, alpha = .3) + geom_hline(yintercept = .5, size = 2) + facet_grid(rows = vars(Sex), cols = vars(Pclass)) + labs(title = "Ensemble Model OOS Predictions")+ theme_bw()
# Stack Model
train_Final_Test %>%
ggplot(aes(x = Age, y = probabilities_oos$stack, shape = as.factor(Survived), size = N_Family, color = Sex)) + geom_point() + geom_smooth(method = "glm", method.args =list(family = "binomial"), se = TRUE, alpha = .3) + geom_hline(yintercept = .5, size = 2) + facet_grid(rows = vars(Sex), cols = vars(Pclass)) + labs(title = "Stack Model OOS Predictions")+ theme_bw()
# Glmboost Model
train_Final_Test %>%
ggplot(aes(x = Age, y = probabilities_oos$glmboost$S, shape = as.factor(Survived), size = N_Family, color = Sex)) + geom_point() + geom_smooth(method = "glm", method.args =list(family = "binomial"), se = TRUE, alpha = .3) + geom_hline(yintercept = .5, size = 2) + facet_grid(rows = vars(Sex), cols = vars(Pclass)) + labs(title = "Glmboost Model OOS Predictions")+ theme_bw()
# Ranger Model
train_Final_Test %>%
ggplot(aes(x = Age, y = probabilities_oos$ranger$S, shape = as.factor(Survived), size = N_Family, color = Sex)) + geom_point() + geom_smooth(method = "glm", method.args =list(family = "binomial"), se = TRUE, alpha = .3) + geom_hline(yintercept = .5, size = 2) + facet_grid(rows = vars(Sex), cols = vars(Pclass)) + labs(title = "Ranger Model OOS Predictions")+ theme_bw()
# xgbTree Model
train_Final_Test %>%
ggplot(aes(x = Age, y = probabilities_oos$xgbTree$S, shape = as.factor(Survived), size = N_Family, color = Sex)) + geom_point() + geom_smooth(method = "glm", method.args =list(family = "binomial"), se = TRUE, alpha = .3) + geom_hline(yintercept = .5, size = 2) + facet_grid(rows = vars(Sex), cols = vars(Pclass)) + labs(title = "xgbTree Model OOS Predictions")+ theme_bw()
# nnet Model
train_Final_Test %>%
ggplot(aes(x = Age, y = probabilities_oos$nnet$S, shape = as.factor(Survived), size = N_Family, color = Sex)) + geom_point() + geom_smooth(method = "glm", method.args =list(family = "binomial"), se = TRUE, alpha = .3) + geom_hline(yintercept = .5, size = 2) + facet_grid(rows = vars(Sex), cols = vars(Pclass)) + labs(title = "Neural Net (nnet) Model OOS Predictions")+ theme_bw()
# Model
Predict Kaggle Titanic Test outcomes with the fully trained and hypertuned models
Visualize the seperation of predicted probabilities by each model
# Kaggle Probabilities
probabilities_Kaggle = predict(trained_model_List, newdata = test_Final, type = "prob")
# Ensemble Model
test_Final %>%
ggplot(aes(x = Age, y = probabilities_Kaggle$ensemble, size = N_Family, color = Sex)) + geom_point() + geom_smooth(method = "glm", method.args =list(family = "binomial")) + geom_hline(yintercept = .5, size = 2) + facet_grid(rows = vars(Sex), cols = vars(Pclass)) + labs(title = "Ensemble Model Kaggle Predictions")+ theme_bw()
# Stack Model
test_Final %>%
ggplot(aes(x = Age, y = probabilities_Kaggle$stack, size = N_Family, color = Sex)) + geom_point() + geom_smooth(method = "glm", method.args =list(family = "binomial")) + geom_hline(yintercept = .5, size = 2) + facet_grid(rows = vars(Sex), cols = vars(Pclass)) + labs(title = "Stack Model Kaggle Predictions")+ theme_bw()
# Glmboost Model
test_Final %>%
ggplot(aes(x = Age, y = probabilities_Kaggle$glmboost$S, size = N_Family, color = Sex)) + geom_point() + geom_smooth(method = "glm", method.args =list(family = "binomial")) + geom_hline(yintercept = .5, size = 2) + facet_grid(rows = vars(Sex), cols = vars(Pclass)) + labs(title = "Glmboost Model Kaggle Predictions")+ theme_bw()
# Ranger Model
test_Final %>%
ggplot(aes(x = Age, y = probabilities_Kaggle$ranger$S, size = N_Family, color = Sex)) + geom_point() + geom_smooth(method = "glm", method.args =list(family = "binomial")) + geom_hline(yintercept = .5, size = 2) + facet_grid(rows = vars(Sex), cols = vars(Pclass)) + labs(title = "Ranger Model Kaggle Predictions")+ theme_bw()
# xgbTree Model
test_Final %>%
ggplot(aes(x = Age, y = probabilities_Kaggle$xgbTree$S, size = N_Family, color = Sex)) + geom_point() + geom_smooth(method = "glm", method.args =list(family = "binomial")) + geom_hline(yintercept = .5, size = 2) + facet_grid(rows = vars(Sex), cols = vars(Pclass)) + labs(title = "xgbTree Model Kaggle Predictions")+ theme_bw()
# nnet Model
test_Final %>%
ggplot(aes(x = Age, y = probabilities_Kaggle$nnet$S, size = N_Family, color = Sex)) + geom_point() + geom_smooth(method = "glm", method.args =list(family = "binomial")) + geom_hline(yintercept = .5, size = 2) + facet_grid(rows = vars(Sex), cols = vars(Pclass)) + labs(title = "Neural Net (nnet) Model Kaggle Predictions")+ theme_bw()
survival_probability_threshold = .4
Predicted_kaggle_vote_ensemble=ifelse(probabilities_Kaggle$ensemble > survival_probability_threshold, 1,0)
Predicted_kaggle_vote_stack=ifelse(probabilities_Kaggle$stack > survival_probability_threshold, 1,0)
Predicted_kaggle_vote_glmboost=ifelse(probabilities_Kaggle$glmboost$S > survival_probability_threshold, 1,0)
Predicted_kaggle_vote_ranger=ifelse(probabilities_Kaggle$ranger$S > survival_probability_threshold, 1,0)
Predicted_kaggle_vote_xgbTree=ifelse(probabilities_Kaggle$xgbTree$S > survival_probability_threshold, 1,0)
Predicted_kaggle_vote_nnet=ifelse(probabilities_Kaggle$nnet$S > survival_probability_threshold, 1,0)
vote_df = data.frame(
PassengerId=test_Final$PassengerId,
v_ensemble = Predicted_kaggle_vote_ensemble,
v_stack = Predicted_kaggle_vote_stack,
v_glmboost = Predicted_kaggle_vote_glmboost,
v_ranger = Predicted_kaggle_vote_ranger,
v_xgbTree = Predicted_kaggle_vote_xgbTree,
v_nnet = Predicted_kaggle_vote_nnet
)
group_vote_submission=vote_df%>%
gather(key = "Model", value = "Prediction", -PassengerId)%>%
group_by(PassengerId)%>%
mutate(vote_percentage = mean(Prediction))%>%
mutate(vote_majority = ifelse(vote_percentage==1, "1","0"))%>%
select(PassengerId, vote_majority)
colnames(group_vote_submission)=c("PassengerId", "Survived")
range(group_vote_submission$PassengerId)
## [1] 892 1309
group_vote_submission_subset=group_vote_submission[1:418,]
head(vote_df)
## PassengerId v_ensemble v_stack v_glmboost v_ranger v_xgbTree v_nnet
## 1 892 0 0 0 0 0 0
## 2 893 0 0 1 0 0 0
## 3 894 0 0 0 0 0 0
## 4 895 0 0 0 0 0 0
## 5 896 1 1 1 0 1 1
## 6 897 0 0 0 0 0 0
Review models predictive performances within CV, OOS, and Kaggle Test, against niave benchmarks
train[train$PassengerId == "701",]
## # A tibble: 1 x 12
## PassengerId Survived Pclass Name Sex Age SibSp Parch Ticket Fare
## <dbl> <dbl> <dbl> <chr> <chr> <dbl> <dbl> <dbl> <chr> <dbl>
## 1 701 1 1 Asto~ fema~ 18 1 0 PC 17~ 228.
## # ... with 2 more variables: Cabin <chr>, Embarked <chr>
train_Final_Train[train_Final_Train$PassengerId=="701",]
## # A tibble: 1 x 11
## PassengerId Survived Pclass Sex Age Fare Embarked N_Family Cluster
## <dbl> <fct> <fct> <fct> <dbl> <dbl> <fct> <dbl> <fct>
## 1 701 S 1 fema~ 18 15.1 C 2 3
## # ... with 2 more variables: Age_Range <fct>, Survival_Cluster <fct>
JohnJacobAstor = data.frame(Survival_Cluster = as.factor(1), Sex = as.factor("male"), Pclass = as.factor(1), Age_Range = as.factor("45-54"), Embarked = as.factor("C"), Cluster = as.factor(3), N_Family = 2, Fare = 227.525, Age = 46)
sapply(train_Final_Train, class)
## PassengerId Survived Pclass Sex
## "numeric" "factor" "factor" "factor"
## Age Fare Embarked N_Family
## "numeric" "numeric" "factor" "numeric"
## Cluster Age_Range Survival_Cluster
## "factor" "factor" "factor"
predict(trained_model_List, JohnJacobAstor, type = "raw")
## $ensemble
## [1] D
## Levels: D S
##
## $stack
## [1] S
## Levels: D S
##
## $glmboost
## [1] D
## Levels: D S
##
## $ranger
## [1] S
## Levels: D S
##
## $xgbTree
## [1] D
## Levels: D S
##
## $nnet
## [1] S
## Levels: D S
# Naive Predictive Strategies
FP_strategy = sum(test_Final$Survived=="S")/length(test_Final$Survived)
FN_strategy = sum(test_Final$Survived=="D")/length(test_Final$Survived)
#
df_Models_Accuracy = data.frame(
ensemble = mean(ensemble_Model$error$Accuracy),
stack = mean(stack_Model$error$Accuracy),
glmboost = mean(caret_Model_List$glmboost$results$Accuracy),
ranger = mean(caret_Model_List$ranger$results$Accuracy),
xgbTree = mean(caret_Model_List$xgbTree$results$Accuracy),
nnet = mean(caret_Model_List$nnet$results$Accuracy)
)
# Evolution of model performance
Accuracy_Model_list = list(
glmboost = data.frame(caret_Model_List$glmboost$results$Accuracy),
rf = data.frame(caret_Model_List$ranger$results$Accuracy),
xgboost = data.frame(caret_Model_List$xgbTree$results$Accuracy),
nnet = data.frame(caret_Model_List$nnet$results$Accuracy)
)
# Performance Metrics
predict_Models_Comparison = rbind(
Everybody_Lives = c(FP_strategy, FP_strategy, FP_strategy, FP_strategy, FP_strategy),
diff_2 = FN_strategy - FP_strategy,
Everybody_Dies = c(FN_strategy, FN_strategy, FN_strategy, FN_strategy, FN_strategy),
diff_3 = df_Models_Accuracy - FN_strategy,
OOS_CV_Training_Accuracy = df_Models_Accuracy,
diff_4 = predict_Models_accuracy_oos - df_Models_Accuracy,
OOS_Test_Accuracy = predict_Models_accuracy_oos
)
predict_Models_Comparison
## ensemble stack glmboost ranger
## Everybody_Lives 0.36363636 0.3636364 0.36363636 0.36363636
## diff_2 0.27272727 0.2727273 0.27272727 0.27272727
## Everybody_Dies 0.63636364 0.6363636 0.63636364 0.63636364
## diff_3 0.15449301 0.1546342 0.14819669 0.12905833
## OOS_CV_Training_Accuracy 0.79085665 0.7909978 0.78456033 0.76542197
## diff_4 0.04414335 0.0390022 0.05043967 0.04657803
## OOS_Test_Accuracy 0.83500000 0.8300000 0.83500000 0.81200000
## xgbTree nnet
## Everybody_Lives 0.36363636 0.36363636
## diff_2 0.27272727 0.27272727
## Everybody_Dies 0.63636364 0.63636364
## diff_3 0.12404754 0.08930469
## OOS_CV_Training_Accuracy 0.76041118 0.72566833
## diff_4 0.05758882 0.08633167
## OOS_Test_Accuracy 0.81800000 0.81200000
Select best model and save predictions for Kaggle’s Titanic Test set
# ranger
vote_df$v_ranger
## [1] 0 0 0 0 0 0 0 0 1 0 0 0 1 0 1 1 0 0 0 0 1 1 1 1 1 0 1 0 0 0 0 0 1 0 1
## [36] 0 0 0 0 0 0 0 0 1 1 0 1 0 1 0 1 0 1 1 0 0 0 0 0 1 0 0 0 1 1 1 1 0 1 1
## [71] 1 0 0 1 1 1 0 1 0 1 1 0 1 0 0 0 1 0 1 1 0 0 1 0 1 0 1 0 0 0 1 0 0 0 1
## [106] 0 0 0 0 0 0 1 1 1 1 0 0 1 1 1 1 0 1 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0
## [141] 0 1 1 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 1 1 1 1 1 0 0 0 1 0 1 0 0 0 0 0 0
## [176] 1 1 1 1 1 0 1 1 0 1 0 1 0 0 0 0 0 0 0 1 0 1 0 0 0 1 1 1 1 0 0 0 0 1 0
## [211] 0 0 0 1 0 0 1 1 1 0 1 0 1 0 1 1 0 1 0 0 0 1 0 0 1 0 0 0 1 1 1 1 1 0 0
## [246] 1 1 0 1 1 1 0 1 0 0 0 0 0 1 0 0 0 1 1 0 0 0 0 0 0 1 0 1 1 0 1 0 0 0 0
## [281] 0 1 1 1 1 0 0 1 0 0 0 0 0 1 0 0 1 0 1 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 1
## [316] 1 1 0 0 0 0 0 0 1 1 0 1 1 0 0 1 1 0 1 0 1 0 0 0 0 0 0 0 1 0 1 0 0 0 1
## [351] 1 0 0 1 1 1 1 0 0 0 0 1 1 0 1 0 0 0 1 0 0 1 0 0 1 1 0 0 0 0 0 0 0 0 0
## [386] 1 0 0 0 0 1 1 0 0 0 1 0 1 0 0 1 0 1 1 1 0 0 1 1 1 1 1 0 0 1 0 0 0
# Select Model Vote
Predicted_Survived_Submission = data.frame(PassengerId = vote_df$PassengerId, Survived = vote_df$v_xgbTree)
# Format Model Vote with PassengerId
#test_Submission = data.frame(PassengerId=test_Final$PassengerId, Survived = Predicted_Survived_Submission)
write.csv(Predicted_Survived_Submission, file = 'Kaggle_Titanic_Submission_28.csv', row.names = FALSE)