我正在处理的数据集是不平衡的,因此我尝试使用欠采样来平衡数据集,但是我收到错误
我的代码
library(unbalanced)
#convert class to binary
levels(car$class)[1]<-"0"#acc
levels(car$class)[2]<-"1"#good
levels(car$class)[3]<-"2"#unacc
levels(car$class)[4]<-"3"#vgood
#find the number of columns
n_car<-ncol(car)
#class of the data set
outcome_car<-car$class
input_car<-car[ ,-7]
data_car<-ubUnder(X=input_car, Y= outcome_car, perc = 40, method = "percPos")
这是我得到的错误
Error: all(unique(Y) %in% c(0, 1)) is not TRUE
当我尝试平衡另一个数据集时,代码运行良好,所以我想也许是因为我在这个数据集4级别和另一个数据集2级别? 但是如何处理这个错误?
谢谢