Warning messages for running r script on 10-folds cross-validation classification model of customer churn -
i'm beginner in r, i'm tring customer churn data, built classification model, , tried use cross validation evaluate our model's performance, ther wrong code below:
"""
setwd("h:/r") source("cutoff-plot.r") source("classification-metrics.r") library(tree) negative.label <- "no" positive.label <- "yes" class.labels <- c(negative.label,positive.label) data.set <- read.csv("churn.csv") data.set$churn <- factor( as.numeric(data.set$churn==positive.label), levels=0:1, labels=class.labels) f <- churn ~ . n.folds <- 10 fold.idx <- sample(rep(1:n.folds, length=nrow(data.set))) p.linear <- rep(na, nrow(data.set)) p.tree <- rep(na,nrow(data.set)) (k in 1:n.folds) { fold <- (fold.idx == k) linear.model <- glm(f, data.set[-fold,],family=binomial) tree.model <- tree(f, data.set[-fold,]) p.linear[fold] <- predict(linear.model,data.set[fold, ]) p.tree[fold] <- predict(tree.model,data.set[fold, ]) } yhat.linear <- compute.yhat(p.linear,threshold=0.14) yhat.tree <- compute.yhat(p.tree,threshold=0.08) y <- data.set$churn linear.stats <- summary.stats(y, yhat.linear) tree.stats <- summary.stats(y, yhat.tree) linear.stats tree.stats cutoff.plot(p.linear,y) cutoff.plot(p.tree,y)
"""
the problem after running loop for (k in 1:n.folds) {}
, there
warning messages: 1: in p.tree[fold] <- predict(tree.model, data.set[fold, ]) : number of items replace not multiple of replacement length 2: in p.tree[fold] <- predict(tree.model, data.set[fold, ]) : number of items replace not multiple of replacement length 3: in p.tree[fold] <- predict(tree.model, data.set[fold, ]) : number of items replace not multiple of replacement length 4: in p.tree[fold] <- predict(tree.model, data.set[fold, ]) : number of items replace not multiple of replacement length 5: in p.tree[fold] <- predict(tree.model, data.set[fold, ]) : number of items replace not multiple of replacement length 6: in p.tree[fold] <- predict(tree.model, data.set[fold, ]) : number of items replace not multiple of replacement length 7: in p.tree[fold] <- predict(tree.model, data.set[fold, ]) : number of items replace not multiple of replacement length 8: in p.tree[fold] <- predict(tree.model, data.set[fold, ]) : number of items replace not multiple of replacement length 9: in p.tree[fold] <- predict(tree.model, data.set[fold, ]) : number of items replace not multiple of replacement length 10: in p.tree[fold] <- predict(tree.model, data.set[fold, ]) : number of items replace not multiple of replacement length
because i'm start r few days, thx , suggestions.
Comments
Post a Comment