{"metadata":{"kernelspec":{"name":"ir","display_name":"R","language":"R"},"language_info":{"name":"R","codemirror_mode":"r","pygments_lexer":"r","mimetype":"text/x-r-source","file_extension":".r","version":"4.0.5"}},"nbformat_minor":4,"nbformat":4,"cells":[{"cell_type":"markdown","source":"# Predict Potential Spammers on Fiverr in R\n\n> #### All R programming by John Akwei, ECMp ERMp Data Scientist","metadata":{}},{"cell_type":"markdown","source":"# Required Packages","metadata":{}},{"cell_type":"code","source":"suppressMessages({library(readr)\n                  library(data.table)\n                  library(MLmetrics)})","metadata":{"execution":{"iopub.status.busy":"2022-07-29T16:18:27.179626Z","iopub.execute_input":"2022-07-29T16:18:27.181396Z","iopub.status.idle":"2022-07-29T16:18:27.194323Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"# Import Datasets","metadata":{}},{"cell_type":"code","source":"train <- fread('../input/predict-potential-spammers-on-fiverr/train.csv')\ntest <- fread('../input/predict-potential-spammers-on-fiverr/test.csv')\nsubmission <- fread('../input/predict-potential-spammers-on-fiverr/sample_submission.csv')","metadata":{"execution":{"iopub.status.busy":"2022-07-29T15:46:41.616773Z","iopub.execute_input":"2022-07-29T15:46:41.618466Z","iopub.status.idle":"2022-07-29T15:46:42.214315Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"# Data Normalization","metadata":{}},{"cell_type":"code","source":"# Feature Scaling\nmaxs <- apply(train[,3:53], 2, max) \nmins <- apply(train[,3:53], 2, min)\n\n# Create train_final with feature scaling\nscaled <- as.data.frame(scale(train[,3:53], center=mins, scale=maxs - mins))\ntrain_final <- cbind(train[,1:2], scaled)\n\nhead(train_final)","metadata":{"execution":{"iopub.status.busy":"2022-07-29T15:57:01.861323Z","iopub.execute_input":"2022-07-29T15:57:01.863482Z","iopub.status.idle":"2022-07-29T15:57:04.835216Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"# Machine Learning with Cross-Validation","metadata":{}},{"cell_type":"code","source":"# Cross-Validation Datasets\nindex <- sample(1:nrow(train_final),round(0.75*nrow(train_final)))\ntrain_ <- train_final[index,]\ntest_ <- train_final[-index,]\n\n# Linear Modeling\nset.seed(123)\nCVmodel_LN <- lm(label ~ X1 + X2 + X3 + X4 + X5 + X6 + X7 + X8 + X9 + X10 + X11 + X12 +\n                 X14 + X15 + X16 + X17 + X18 + X19 + X20 + X21 + X22 + X23 +\n                 X24 + X25 + X26 + X28 + X31 + X32 + X34 + X35 + X36 + X37, data=train_)\n\n# Predictive Analytics\nCVpred_LN <- predict(CVmodel_LN, test_)\nnames(CVpred_LN) <- NULL\n\n# Display Linear Model\nCVmodel_LN\n\n# Display first three predictions\nhead(CVpred_LN, 3)","metadata":{"execution":{"iopub.status.busy":"2022-07-29T16:16:23.255116Z","iopub.execute_input":"2022-07-29T16:16:23.256704Z","iopub.status.idle":"2022-07-29T16:16:24.184077Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"# Accuracy of Cross-Validated Predictions","metadata":{}},{"cell_type":"code","source":"# Root Mean Square Percentage Error\ncat(\"Root Mean Square Percentage Error = \", RMSPE(test_$label, CVpred_LN))","metadata":{"execution":{"iopub.status.busy":"2022-07-29T16:17:44.998973Z","iopub.execute_input":"2022-07-29T16:17:45.000750Z","iopub.status.idle":"2022-07-29T16:17:45.038136Z"},"trusted":true},"execution_count":null,"outputs":[]},{"cell_type":"markdown","source":"# Linear Regression Model","metadata":{}},{"cell_type":"code","source":"# Linear Regression Model\nset.seed(123)\n# model_LN <- lm(label ~ ., data=train[,c(1,3:53)])\nmodel_LN <- glm(label ~.,family=binomial(link='logit'),data=train[,c(1,3:53)])\n\ntest$label <- train$label[1:24148]\n\n# Linear Regression Predictions\npred_LN <- predict.glm(model_LN, test[,c(2:53)])\nnames(pred_LN) <- NULL\n\n# Submit Results\nsubmission$label <- pred_LN\nwrite_csv(submission, 'submission.csv')\n\n# Display Linear Model & Submitted Results\nmodel_LN\nhead(submission,10)","metadata":{"execution":{"iopub.status.busy":"2022-07-29T16:40:14.212861Z","iopub.execute_input":"2022-07-29T16:40:14.214616Z","iopub.status.idle":"2022-07-29T16:40:34.047281Z"},"trusted":true},"execution_count":null,"outputs":[]}]}