在R中执行SMOTE的包

c8ib6hqw  于 5个月前  发布在  其他
关注(0)|答案(3)|浏览(75)

我尝试在R中为不平衡的数据集执行SMOTE。我尝试为此安装“DMwR”包,但似乎此包已从cran存储库中删除。我收到错误:“包'DMwR'不可用(对于R版本4.0.2)“
有没有人可以帮我解决这个问题?或者推荐其他在R中使用SMOTE的软件包?
TIA!

k7fdbhmy

k7fdbhmy1#

你是对的。错误消息意味着最新版本的R(4.x.x)不支持该软件包。
据我所知,你正在寻找的包裹现在被称为“家庭”。

install.packages("smotefamily")

字符串
应该能给予你的需求

iszxjhcz

iszxjhcz2#

smotefamily是一个选项,但语法与DMwR中使用的旧语法有点不同。实际上,它不支持caret中使用的经典公式,例如target ~ .(参见文档SMOTE(X, target, K = 5, dup_size = 0)https://cran.r-project.org/web/packages/smotefamily/smotefamily.pdf)。
相反,performanceEstimation包具有与DMwR中实现的SMOTE完全相同的公式:

smote(form, data, perc.over = 2, k = 5, perc.under = 2)

字符串
参见文档https://rdrr.io/cran/performanceEstimation/man/smote.html

vqlkdk9b

vqlkdk9b3#

使用caret进行二次采样技术时损失很大。
您可以从archives中找到可用版本,下载所需的存档并按以下方式安装:

install.packages("/path/to/archive/DMwR_0.4.1.tar.gz", repos=NULL, type="source")

字符串
就我个人而言,我找不到R 4.0.5(2021-03-31)的可用版本.我将不得不安装一个旧版本的R。

相关问题