Download scoring and training data + packages
pacman::p_load(readr)
pacman::p_load(rpart)
pacman::p_load(rpart.plot)
pacman::p_load(rattle)
pacman::p_load(RColorBrewer)
ResumeNames_training <- read.csv("ResumeNames_training.csv")
ResumeNames_scoring <- read.csv("Resumenames_scoring.csv")
Build the decision tree model
call_back_tree <- rpart(call
~gender+ethnicity+quality+holes+email+school+requirements
, data = ResumeNames_training
, method = "class"
, minsplit = 7
, minbucket = 1
, cp = -1
)
#1: if you wish to view your decision tree, plot it
#1: rpart.plot library
rpart.plot(call_back_tree, main = "Decision Tree for Callback on Resumes")

fancyRpartPlot(call_back_tree, caption = "Decision Tree for Callback on Resumes")

Scoring data - > make predictions based on the model
predictions <- predict(call_back_tree, ResumeNames_scoring)
View(predictions)
#1: join with scoring data
score_with_predict <- cbind(predictions, ResumeNames_scoring)
View(score_with_predict)
LS0tCnRpdGxlOiAiRGVjaXNpb24gVHJlZXMiCm91dHB1dDogaHRtbF9ub3RlYm9vawotLS0KCiMjIyMgRG93bmxvYWQgc2NvcmluZyBhbmQgdHJhaW5pbmcgZGF0YSArIHBhY2thZ2VzCmBgYHtyfQpwYWNtYW46OnBfbG9hZChyZWFkcikKcGFjbWFuOjpwX2xvYWQocnBhcnQpCnBhY21hbjo6cF9sb2FkKHJwYXJ0LnBsb3QpCnBhY21hbjo6cF9sb2FkKHJhdHRsZSkKcGFjbWFuOjpwX2xvYWQoUkNvbG9yQnJld2VyKQoKUmVzdW1lTmFtZXNfdHJhaW5pbmcgPC0gcmVhZC5jc3YoIlJlc3VtZU5hbWVzX3RyYWluaW5nLmNzdiIpClJlc3VtZU5hbWVzX3Njb3JpbmcgPC0gcmVhZC5jc3YoIlJlc3VtZW5hbWVzX3Njb3JpbmcuY3N2IikKYGBgCgojIyMjIEJ1aWxkIHRoZSBkZWNpc2lvbiB0cmVlIG1vZGVsCmBgYHtyfQpjYWxsX2JhY2tfdHJlZSA8LSBycGFydChjYWxsCiAgICAgICAgICAgICAgICAgICAgICAgIH5nZW5kZXIrZXRobmljaXR5K3F1YWxpdHkraG9sZXMrZW1haWwrc2Nob29sK3JlcXVpcmVtZW50cwogICAgICAgICAgICAgICAgICAgICAgICAgICAgLCBkYXRhID0gUmVzdW1lTmFtZXNfdHJhaW5pbmcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICwgbWV0aG9kID0gImNsYXNzIgogICAgICAgICAgICAgICAgICAgICAgICAgICAgLCBtaW5zcGxpdCA9IDcKICAgICAgICAgICAgICAgICAgICAgICAgICAgICwgbWluYnVja2V0ID0gMQogICAgICAgICAgICAgICAgICAgICAgICAgICAgLCBjcCA9IC0xCiAgICAgICAgICAgICAgICAgICAgICAgICAgICkKCiMxOiBpZiB5b3Ugd2lzaCB0byB2aWV3IHlvdXIgZGVjaXNpb24gdHJlZSwgcGxvdCBpdAojMTogcnBhcnQucGxvdCBsaWJyYXJ5CnJwYXJ0LnBsb3QoY2FsbF9iYWNrX3RyZWUsIG1haW4gPSAiRGVjaXNpb24gVHJlZSBmb3IgQ2FsbGJhY2sgb24gUmVzdW1lcyIpCgpmYW5jeVJwYXJ0UGxvdChjYWxsX2JhY2tfdHJlZSwgY2FwdGlvbiA9ICJEZWNpc2lvbiBUcmVlIGZvciBDYWxsYmFjayBvbiBSZXN1bWVzIikKYGBgCgoKIyMjIyBTY29yaW5nIGRhdGEgLSA+IG1ha2UgcHJlZGljdGlvbnMgYmFzZWQgb24gdGhlIG1vZGVsCmBgYHtyfQpwcmVkaWN0aW9ucyA8LSBwcmVkaWN0KGNhbGxfYmFja190cmVlLCBSZXN1bWVOYW1lc19zY29yaW5nKQpWaWV3KHByZWRpY3Rpb25zKQoKIzE6IGpvaW4gd2l0aCBzY29yaW5nIGRhdGEKCnNjb3JlX3dpdGhfcHJlZGljdCA8LSBjYmluZChwcmVkaWN0aW9ucywgUmVzdW1lTmFtZXNfc2NvcmluZykKVmlldyhzY29yZV93aXRoX3ByZWRpY3QpCmBgYAoK