在R中使用svm进行预测时出现的错误

点击这里访问我使用的训练和测试数据。我是SVM的新手。我尝试在R中使用svm包来训练我的数据,我的数据包含40个属性和39个标签。所有属性都是双精度类型(大多数是0或1,因为我对分类属性进行了虚拟编码),类标签原本是不同的字符串,后来我将其转换为因子,现在是整数类型。

model=svm(Category~.,data=train1,scale=FALSE)p1=predict(model,test1,"prob")

这是我在使用SVM训练模型后得到的结果。

Call:svm(formula = Category ~ ., data = train1, scale = FALSE)Parameters:   SVM-Type:  C-classification    SVM-Kernel:  radial    cost:  1   gamma:  0.02564103    Number of Support Vectors:  2230

我使用了预测函数

Error in predict.svm(model, test1, "prob") : NAs in foreign function call (arg 1)In addition: Warning message:In predict.svm(model, test1, "prob") : NAs introduced by coercion

我不明白为什么会出现这个错误,我检查了训练数据的所有属性,它们都没有NA值。请帮助我解决这个问题。谢谢


回答:

我假设你使用的是e1071包(你没有指定使用哪个包,据我所知没有名为svm的包)。

错误信息令人困惑,但问题是你将”prob”作为第三个参数传递,而函数期望一个布尔值。试试这样做:

require(e1071)model=svm(Category~.,data=train1, scale=FALSE, probability=TRUE)p1=predict(model,test1, probability = TRUE)head(attr(p1, "probabilities"))

这是我得到的输出样本。

  WARRANTS OTHER OFFENSES LARCENY/THEFT VEHICLE THEFT  VANDALISM NON-CRIMINAL    ROBBERY    ASSAULT WEAPON LAWS   BURGLARY1 0.04809877      0.1749634     0.2649921    0.02899535 0.03548131    0.1276913 0.02498949 0.08322866  0.01097913 0.03800846  SUSPICIOUS OCC DRUNKENNESS FORGERY/COUNTERFEITING DRUG/NARCOTIC STOLEN PROPERTY SECONDARY CODES    TRESPASS MISSING PERSON1 0.03255891     0.003790755   0.006249521    0.01944938     0.004843043      0.01305858 0.009727582     0.01840337     FRAUD  KIDNAPPING     RUNAWAY DRIVING UNDER THE INFLUENCE SEX OFFENSES FORCIBLE PROSTITUTION DISORDERLY CONDUCT       ARSON1 0.01884472 0.006089563 0.001378799                 0.003289503            0.01071418  0.004562048        0.003107619 0.002124643  FAMILY OFFENSES LIQUOR LAWS      BRIBERY EMBEZZLEMENT      SUICIDE1    0.0004787845 0.001669914 0.0007471968 0.0007465053 0.0007374036

希望这对你有帮助。

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注