Это данные -
'data.frame': 7156 obs. of 21 variables:
$ X0 : Factor w/ 2 levels "no","yes": 1 1 1 1 1 1 1 1 1 1 ...
$ X1 : int 30 36 45 60 32 33 35 48 29 46 ...
$ X2 : Factor w/ 12 levels "admin.","blue-collar",..: 8 1 2 1 7 1 1 1 1 1 ...
$ X3 : Factor w/ 4 levels "divorced","married",..: 2 3 2 2 1 2 3 2 3 2 ...
$ X4 : Factor w/ 8 levels "basic.4y","basic.6y",..: 7 7 2 7 7 7 4 4 7 4 ...
$ X5 : Factor w/ 2 levels "no","unknown": 1 1 1 2 1 1 1 2 1 2 ...
$ X6 : Factor w/ 3 levels "no","unknown",..: 3 3 3 3 1 1 1 1 1 2 ...
$ X7 : Factor w/ 3 levels "no","unknown",..: 1 1 1 1 1 1 1 1 1 2 ...
$ X8 : Factor w/ 2 levels "cellular","telephone": 2 2 2 2 2 2 2 2 2 2 ...
$ X9 : Factor w/ 10 levels "apr","aug","dec",..: 5 5 5 5 5 5 5 5 5 5 ...
$ X10: Factor w/ 5 levels "fri","mon","thu",..: 2 2 2 2 2 2 2 2 2 2 ...
$ X11: int 83 247 252 62 559 190 10 189 109 148 ...
$ X12: int 4 2 2 2 3 4 5 2 2 2 ...
$ X13: int 999 999 999 999 999 999 999 999 999 999 ...
$ X14: int 0 0 0 0 0 0 0 0 0 0 ...
$ X15: Factor w/ 3 levels "failure","nonexistent",..: 2 2 2 2 2 2 2 2 2 2 ...
$ X16: num 0 0 0 0 0 0 0 0 0 0 ...
$ X17: int 94465 94465 94465 94465 94465 94465 94465 94465 94465 94465 ...
$ X18: num -41.8 -41.8 -41.8 -41.8 -41.8 -41.8 -41.8 -41.8 -41.8 -41.8 ...
$ X19: num 0.233 0.233 0.233 0.233 0.233 ...
$ X20: Factor w/ 9 levels "2.067.958.333",..: 9 9 9 9 9 9 9 9 9 9 ...
Я пытаюсь написать цикл for, который может преобразовывать мои числовые переменные, как в:
# Assigning the integer columns to = num.column
num.column <- sapply(data, is.numeric)
# Transforming integer variables into numeric variables
data[,num.column] <- sapply(data[,num.column], as.numeric)
Затем я пишу следующее дляцикл:
for(i in 1:length(num.column))
data[,num.column] <- arules::discretize(as.matrix(data[,num.column]), method = "interval", breaks = 4)
Я вставил функцию as.matrix, потому что иначе он видит x как не числовой.Я получаю следующую ошибку:
Error in seq.default(from = min(x, na.rm = TRUE), to = max(x, na.rm = TRUE), :
'from' must be a finite number
In addition: Warning message:
In seq.default(from = min(x, na.rm = TRUE), to = max(x, na.rm = TRUE), :
NAs introduced by coercion