Дискретность конкретных колонок с пакетом arules: - PullRequest
0 голосов
/ 11 марта 2019

Это данные -

 '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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...