我想与R中的SVM一起预测股票价格和新闻情绪得分,以便了解新闻是否对股票价格及其预测产生影响。我读到支持向量机(svm)是解决此问题的一种很好的机器学习方法。我有一栏代表股票和新闻的日期,一栏代表那一天的股票价格,四栏代表基于不同词汇的情绪得分。我想先用其中一种词汇来测试,如果模型可行,再尝试另一种。数据集如下。我找到了一些使用python的示例,但找不到R的东西。我喜欢使用svm()
e1071 package
函数
我将数据分为训练和测试集:
sample <- sample(nrow(sentGI),nrow(sentGI)*0.70)
df.trainGI = sentGI[sample,]
df.testGI = sentGI[-sample,]
我已经尝试过此SVM代码,但是我的错误预测率是100
plot(df.trainGI$GSPC.Close, df.trainGI$SentimentGI, pch = 19, col = c("red", "blue"))
svm_model_GI <- svm(SentimentGI.Class ~ ., df.trainGI)
print(svm_model_GI)
plot(svm_model_GI, df.trainGI)
svm_pred_GI <- predict(svm_model_GI, newdata = df.testGI, type="response")
rmse <- sqrt(mean((svm_pred_GI - df.testGI$GSPC.Close)^2))
rmse
我在这里做错了什么?希望有人能帮助我!