【发布时间】:2021-07-14 15:07:37
【问题描述】:
我正在尝试创建平衡数据并使用 SMOTE 函数。
运行我的代码时:
newData <- SMOTE(number~ ., train, perc.over = 600,perc.under=100)
它给了我这个错误:
SMOTE 中的错误(数字~ ., train, perc.over = 600, perc.under = 100) : 未使用的参数 (perc.over = 600, perc.under = 100)
我的数据:
> head(train, 10)
number orderland direction transmission group
1 reference Grossbritannien RL AUT 3
2 reference Belgien LL AUT 3
3 reference B. Deutschland LL AUT 3
4 reference Belgien LL AUT 1
5 reference Schweiz LL AUT 2
6 reference Italien LL AUT 3
7 problem B. Deutschland LL AUT 2
8 reference B. Deutschland LL AUT 1
9 reference Grossbritannien RL AUT 3
10 reference Schweiz LL AUT 2
我不明白这个错误信息。有什么想法吗?
编辑: 我正在使用 DMwR 包
【问题讨论】:
-
看来
SMOTE函数没有perc.over和perc.under参数。您应该真正指定您正在使用哪个包并阅读该功能的文档。 -
通过快速搜索,有两个包具有此功能。会不会是你用错了?试试 DMwR::SMOTE ...
-
我首先加载了DMWr包,尝试了SMOTE功能,但不起作用,然后加载了smotefamily包,这也给了我一个错误。
-
对于 smotefamily 包中的函数,错误是正常的,因为您指定的参数不存在
SMOTE(X, target, K = 5, dup_size = 0)是我可以从文档中看到的定义。 DMwR 功能应该可以工作。 -
它对我有用,您是否尝试过重新启动会话?一定要在调用
SMOTE之前加载DMwR
标签: r