Ошибка в rep (, len): недопустимый аргумент раз

library(OneR)
library(RWeka)

loan_train <- read.csv("loan_train.csv")
loan_test <- read.csv("loan_test.csv")
loan_train <- optbin(loan_train, method = "logreg", na.omit = TRUE)
loan_test <- optbin(loan_test, method = "logreg", na.omit = TRUE)

#Task 1
loan_1R <- OneR(bad_loans ~ ., data = loan_train)
loan_1R

loan_JRip <- JRip(bad_loans ~ ., data = loan_train)
loan_JRip

Нужна помощь с моим кодом. Я могу запускать все, но по какой-то причине каждый раз, когда я печатаю заем_1R, я получаю сообщение об ошибке. Пытался использовать traceback (), но понятия не имел, что это значит. Мой CSV-файл можно найти по ссылке ниже.

https://drive.google.com/file/d/1139FUSXUc_fdzgtKAleo5bGAtjcVGoRC/view?usp=sharing

Error in rep(" ", len) : invalid 'times' argument

In addition: Warning message:
In max(nchar(names(model$rules))) :
  no non-missing arguments to max; returning -Inf
> traceback()
3: cat("If ", model$feature, " = ", names(model$rules[iter]), rep(" ", 
       len), " then ", model$target, " = ", model$rules[[iter]], 
       "\n", sep = "")
2: print.OneR(x)
1: function (x, ...) 
   UseMethod("print")(x) 


> sessionInfo()
R version 3.4.1 (2017-06-30)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows >= 8 x64 (build 9200)

Matrix products: default

locale:
[1] LC_COLLATE=English_Singapore.1252  LC_CTYPE=English_Singapore.1252   
[3] LC_MONETARY=English_Singapore.1252 LC_NUMERIC=C                      
[5] LC_TIME=English_Singapore.1252    

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] RWeka_0.4-37 OneR_2.2    

loaded via a namespace (and not attached):
[1] compiler_3.4.1    tools_3.4.1       grid_3.4.1        rJava_0.9-9       RWekajars_3.9.2-1

person Lacri Mosa    schedule 23.01.2018    source источник
comment
Этот код мне подходит. Кроме того, строка nchar также не является ошибкой, поскольку при извлечении элемента списка в одинарные квадратные скобки имена сохраняются.   -  person alan ocallaghan    schedule 23.01.2018
comment
Ладно, ты прав. Удалили неверный комментарий.   -  person user2554330    schedule 23.01.2018
comment
У меня тоже работает нормально   -  person akrun    schedule 23.01.2018
comment
Мог ли оригинальный автор опубликовать sessionInfo()?   -  person alan ocallaghan    schedule 23.01.2018
comment
Все еще не могу распечатать ссуду_1R .... это дает мне ту же ошибку.   -  person Lacri Mosa    schedule 24.01.2018
comment
Помещено в sessionInfo ()   -  person Lacri Mosa    schedule 24.01.2018


Ответы (1)


После нескольких часов тестирования я обнаружил проблему, но понятия не имел, почему это так. Подумайте, что это как-то связано с пакетом библиотеки (RWeka) .... Размещение библиотеки (RWeka) после кода OneR, казалось, заставило ее работать. Но это означает, что я сталкиваюсь с ошибкой только после запуска библиотеки (RWeka). Какое-нибудь обходное решение?

library(OneR)

loan_train <- read.csv("loan_train.csv")
loan_test <- read.csv("loan_test.csv")
loan_train <- optbin(loan_train, method = "logreg", na.omit = TRUE)
loan_test <- optbin(loan_test, method = "logreg", na.omit = TRUE)

#Task 1
loan_1R <- OneR(bad_loans ~ ., data = loan_train)
loan_1R

library(RWeka)

loan_JRip <- JRip(bad_loans ~ ., data = loan_train)
loan_JRip
person Lacri Mosa    schedule 24.01.2018