R svm对象不会显示绘图,也不会返回错误
我正在尝试使用svm()对数据进行分类。我的数据样本如下:R svm对象不会显示绘图,也不会返回错误,r,svm,R,Svm,我正在尝试使用svm()对数据进行分类。我的数据样本如下: ID call_YearWeek week WeekCount oc x 2011W01 1 0 0 x 2011W02 2 1 1 x 2011W03 3 0 0 x 2011W04 4 0 0 x 2011W05 5 1 1 x 2011W06 6 0 0 x 2011W07 7
ID call_YearWeek week WeekCount oc
x 2011W01 1 0 0
x 2011W02 2 1 1
x 2011W03 3 0 0
x 2011W04 4 0 0
x 2011W05 5 1 1
x 2011W06 6 0 0
x 2011W07 7 0 0
x 2011W08 8 1 1
x 2011W09 9 0 0
x 2011W10 10 0 0
x 2011W11 11 0 0
x 2011W12 12 1 1
x 2011W13 13 1 1
x 2011W14 14 1 1
x 2011W15 15 0 0
x 2011W16 16 2 1
x 2011W17 17 0 0
x 2011W18 18 0 0
x 2011W19 19 1 1
第三列显示一年中的一周。第4列显示了该周的呼叫数,最后一列是一个二进制因子(如果该周是否收到呼叫)。我使用了以下代码行:
train <- data[1:105,]
test <- data[106:157,]
model <- svm(oc~week,data=train)
plot(model,train,week)
plot(model,train)
train这里似乎有两个问题,第一个问题是不是所有的svm类型都被plot.svm
支持——只有分类方法被支持,而不是回归方法。因为您的响应是数值的,svm()
假设您想要进行回归,所以它默认选择“eps回归”。如果您想进行分类,请将您的响应更改为一个因子
model <- svm(factor(oc)~week,data=train)
model感谢您的回复。首先,我使用了factor(oc)并在发布问题之前进行了尝试,但效果并不理想。这可能是因为你提到的第二个问题。我想要一个显示基于“周”因素的测试集分类的图。我认为周应位于水平轴,预测值(列车组的拟合值)应位于垂直轴。我对支持向量机很陌生,所以我可能完全错了,所以这周的预测值都是离散的,对吗?你想“画”一张桌子吗?似乎内置的绘图方法不适合您。那么,您需要从模型中提取哪些信息才能绘制出您想要的内容?