全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
10372 3
2018-04-25
程序代码:
table(data.train.normalize$Y) # 违约样本占比约为0.2207143
fml = as.formula(paste("Y ~ ", paste("X",1:23, sep = "",collapse= "+"))) #回归表达式
newD = SMOTE(fml,data.train.normalize,k = 3,perc.over = 200,perc.under = 100)


运行结果:
> table(data.train.normalize$Y) # 违约样本占比约为0.2207143

    0     1
16365  4635
> #fml = as.formula(paste("Y ~ ", paste("X",1:23, sep = "",collapse= "+"))) #回归表达式
> newD = SMOTE(fml,data.train.normalize,k = 3,perc.over = 200,perc.under = 100)
Error in T[i, ] : subscript out of bounds
In addition: There were 46 warnings (use warnings() to see them)


先对21000条的非均衡训练集样本进行重抽样,用的是SMOTE方法,希望能够将少数类样本(Y=1)合成2倍(perc.over /100)数量的新少数类样本,以此达到均衡样本。这是SMOTE函数主要工作。
但是现在遇到了这个错误,求问如何解决??有没有大神告知一下~~

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2018-4-25 17:49:16
已解决。。。。。。。。。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2018-4-26 18:43:31
请问如何解决的,我也碰到一样的问题
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2018-4-27 11:06:39
dangluzhuo 发表于 2018-4-26 18:43
请问如何解决的,我也碰到一样的问题
把目标变量转换为因子变量,代码如下:
data.train.normalize$Y = factor(data.train.normalize$Y)
不谢~
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群