Ich versuche, ein Klassifikationsmodell mit method = "glm"
in train
zu bauen. Wenn ich method = "rpart"
verwenden es funktioniert gut, aber wenn ich zu method = "glm"
wechseln dann gibt es mir einen FehlerDer Tuning-Parameter in "Glm" vs "RF"
Die Tuning-Parameter Rasterspalten Parameter I
sagen versucht, mit
cpGrid = data.frame(.0001)
haben sollte
auch
cpGrid = data.frame(expand.grid(.cp = seq(.0001, .09, .001)))
Aber beide werfen einen Fehler.
Unter meiner ursprünglichen Code
numFolds = trainControl(method = "cv", number = 10, repeats = 3)
cpGrid = expand.grid(.cp = seq(.0001, .09, .001))
funktioniert
temp <-train(Churn. ~., data = train, method = 'rpart', trControl = numFolds, tuneGrid = cpGrid)
Gibt Fehler
treeCV <-train(Churn. ~., data = train, method = 'glm', trControl = numFolds, tuneGrid = data.frame(cpGrid))
predictCV = predict(treeCV, newdata = test, type = "prob")
dput
aus meiner Daten:
train <- structure(list(State = structure(c(17L, 32L, 36L, 37L, 20L, 25L
), .Label = c("AK", "AL", "AR", "AZ", "CA", "CO", "CT", "DC",
"DE", "FL", "GA", "HI", "IA", "ID", "IL", "IN", "KS", "KY", "LA",
"MA", "MD", "ME", "MI", "MN", "MO", "MS", "MT", "NC", "ND", "NE",
"NH", "NJ", "NM", "NV", "NY", "OH", "OK", "OR", "PA", "RI", "SC",
"SD", "TN", "TX", "UT", "VA", "VT", "WA", "WI", "WV", "WY"), class = "factor"),
VMail.Message = c(25L, 0L, 0L, 0L, 24L, 0L), Day.Mins = c(265.1,
243.4, 299.4, 166.7, 218.2, 157), Day.Calls = c(110L, 114L,
71L, 113L, 88L, 79L), Eve.Charge = c(16.78, 10.3, 5.26, 12.61,
29.62, 8.76), Night.Mins = c(244.7, 162.6, 196.9, 186.9,
212.6, 211.8), Night.Calls = c(91L, 104L, 89L, 121L, 118L,
96L), Intl.Mins = c(10, 12.2, 6.6, 10.1, 7.5, 7.1), CustServ.Calls = c(1L,
0L, 2L, 3L, 3L, 0L), Churn. = structure(c(1L, 1L, 1L, 1L,
1L, 1L), .Label = c("False.", "True."), class = "factor"),
Area.Code = c(2, 2, 1, 2, 3, 2), Int.l.Plan = c(1, 1, 2,
2, 1, 2), VMail.Plan = c(2, 1, 1, 1, 2, 1), Day.Charge = c(565,
1005, 1571, 665, 1113, 580), Eve.Mins = c(690, 87, 1535,
256, 1517, 9), Eve.Calls = c(120, 12, 109, 25, 10, 115),
Night.Charge = c(101, 644, 797, 753, 866, 862), Intl.Calls = c(15,
17, 19, 15, 19, 15), Intl.Charge = c(78, 100, 44, 79, 53,
49)), .Names = c("State", "VMail.Message", "Day.Mins", "Day.Calls",
"Eve.Charge", "Night.Mins", "Night.Calls", "Intl.Mins", "CustServ.Calls",
"Churn.", "Area.Code", "Int.l.Plan", "VMail.Plan", "Day.Charge",
"Eve.Mins", "Eve.Calls", "Night.Charge", "Intl.Calls", "Intl.Charge"
), row.names = c(1L, 3L, 4L, 5L, 7L, 8L), class = "data.frame")
Brauchen Sie Ihre Hilfe zu verwenden cpGrid
in in method = "glm"
Auch wollen Sie wissen, wie sollte ich ntree
in diesem enthalten. Ich habe einige der hier und dort vorgeschlagenen Lösungen untersucht, aber nichts scheint zu funktionieren.
Es gibt keine Optimierungsparameter für 'glm' https://stackoverflow.com/questions/47822694/logistic-regression-tuning-parameter-grid-in-r-caret-package/48218280 # 48218280 – jmuhlenkamp