我正在使用arules包对数据帧中的连续变量进行离散化。我使用的是这一行
离散化(data1,类别= 3)
但它给了我一个错误
cut.default(x,k2)中出错: k2必须是数字
我只是尝试将我的连续变量从"data1“数据帧转换为3个二进制离散变量。任何帮助都是预先appreciated...thanks的
发布于 2015-08-20 00:09:30
检查以下代码:
library(arules)
data1 <- sample(1:30,100,replace = T)
res <- discretize(data1,categories = 3)它工作正常。检查
class(data1)应为整数或数字
发布于 2017-03-31 15:25:17
这对我对所有列进行离散化都很有效:
data1.Disc <- as.data.frame(lapply(data1,
function(x) discretize(x, categories=5)
)
)发布于 2018-01-19 00:51:57
您也可以使用dplyr mutate_if函数。这对我很有效:
data1 <- data1 %>% mutate_if(is.numeric, funs(discretize(., method="frequency", categories=3)))https://stackoverflow.com/questions/32100476
复制相似问题