我尝试在R中为不平衡的数据集执行SMOTE。我尝试为此安装“DMwR”包,但似乎此包已从cran存储库中删除。我收到错误:“包'DMwR'不可用(对于R版本4.0.2)“有没有人可以帮我解决这个问题?或者推荐其他在R中使用SMOTE的软件包?TIA!
k7fdbhmy1#
你是对的。错误消息意味着最新版本的R(4.x.x)不支持该软件包。据我所知,你正在寻找的包裹现在被称为“家庭”。
install.packages("smotefamily")
字符串应该能给予你的需求
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完全相同的公式:
smotefamily
DMwR
caret
target ~ .
SMOTE(X, target, K = 5, dup_size = 0)
performanceEstimation
smote(form, data, perc.over = 2, k = 5, perc.under = 2)
字符串参见文档https://rdrr.io/cran/performanceEstimation/man/smote.html
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。
3条答案
按热度按时间k7fdbhmy1#
你是对的。错误消息意味着最新版本的R(4.x.x)不支持该软件包。
据我所知,你正在寻找的包裹现在被称为“家庭”。
字符串
应该能给予你的需求
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完全相同的公式:字符串
参见文档https://rdrr.io/cran/performanceEstimation/man/smote.html
vqlkdk9b3#
使用
caret
进行二次采样技术时损失很大。您可以从archives中找到可用版本,下载所需的存档并按以下方式安装:
字符串
就我个人而言,我找不到R 4.0.5(2021-03-31)的可用版本.我将不得不安装一个旧版本的R。