Szkolę svm przy użyciu mojej traindaty. (Pakiet e1071 w R). Poniżej znajdują się informacje o moich danych.Otrzymanie błędu "(indeks dolny) logiczny indeks dolny zbyt długo" podczas szkolenia SVM z pakietu e1071 w R
> str(train)
'data.frame': 891 obs. of 10 variables:
$ survived: int 0 1 1 1 0 0 0 0 1 1 ...
$ pclass : int 3 1 3 1 3 3 1 3 3 2 ...
$ name : Factor w/ 15 levels "capt","col","countess",..: 12 13 9 13 12 12 12 8 13 13
$ sex : Factor w/ 2 levels "female","male": 2 1 1 1 2 2 2 2 1 1 ...
$ age : num 22 38 26 35 35 ...
$ ticket : Factor w/ 533 levels "110152","110413",..: 516 522 531 50 473 276 86 396
$ fare : num 7.25 71.28 7.92 53.1 8.05 ...
$ cabin : Factor w/ 9 levels "a","b","c","d",..: 9 3 9 3 9 9 5 9 9 9 ...
$ embarked: Factor w/ 4 levels "","C","Q","S": 4 2 4 4 4 3 4 4 4 2 ...
$ family : int 1 1 0 1 0 0 0 4 2 1 ...
Szkolę to w następujący sposób.
library(e1071)
model1 <- svm(survived~.,data=train, type="C-classification")
Nie ma problemu. Ale kiedy przewidzieć jak:
pred <- predict(model1,test)
pojawia się następujący błąd:
Error in newdata[, object$scaled, drop = FALSE] :
(subscript) logical subscript too long
Próbowałem też usuwając "bilet" predyktorem z obu pociągów i danych testowych. Ale wciąż ten sam błąd. Jaki jest problem?
Trudno odpowiedzieć bez odtwarzalnego przykładu. Błąd mówi, że twoje nowe dane (test tutaj) nie zawierają wystarczającej liczby kolumn. – agstudy