繁体   English   中英

随机森林、SVM 和多项 Logistic 回归与 R

[英]Random Forest, SVM and Multinomial Logistic Regression with R

我对 r 或任何类型的编码几乎一无所知。 我正在上一门需要使用 r 分析数据的课程。 我的最后一个项目是从智能手表下载和分区加速度计数据。 我已经成功地做到了这一点。 然后我必须运行四个模型,如决策树、随机森林、多项逻辑回归和 SMV。 我只让决策树起作用。

该文件非常大,包含 350 万个观测值,我不得不选择一小部分数据才能使其运行而不会超时。 我的数据是train1。 变量“gt”可以是步行、坐下、站立、上楼梯、下楼梯、空和自行车。 我把它作为一个因素并将其称为“gtF”我真的只想将它与“x”、“y”和“z”的变量进行比较,但它不会以这种方式运行,所以我正在尝试您在下面看到的内容删除“索引”、“型号”和“设备”。 错误在代码下方。

任何人都可以就我做错了什么提供建议吗? 请像向孩子解释一样解释它,因为我是一个非常基本的初学者。

我还包含了 SVM 和多项 Logistic 回归的代码和错误。

我的导师说一些错误信息表明缺少数据。 我运行鼠标并收到一条消息,说所有数据都在那里。

随机森林

library(randomForest)
rf <- randomForest(gtF~ .-Index - Model -Device -gt,data=train1,
                   ntree = 300,
                   mtry = 8,
                   importance = TRUE,
                   proximity = TRUE)
print(rf)
attributes(rf)

randomForest.default(m, y, ...) 中的错误:外部函数调用中的 NA/NaN/Inf (arg 1)

支持向量机

library(e1071)
mymodel <- svm(gtF~ .-Index -Model -Device -gt, data = train1)
summary(mymodel)
plot(mymodel, data = train1,
     gt~x)

contrasts<-误差contrasts<- ( *tmp* , value = contr.funs[1 + isOF[nn]]) :对比只能应用于具有 2 个或更多级别的因素

多项 Logistic 回归

library(nnet)
mymodel <- multinom(out~.-Index -Model -Device -gt -gtF,data=train1)
summary(mymodel)

contrasts<-误差contrasts<- ( *tmp* , value = contr.funs[1 + isOF[nn]]) :对比只能应用于具有 2 个或更多级别的因素

谢谢!

对于第一个错误:

您的训练集中必须有一些特征为 'char' 类。

请检查这个:

> a <- c("1", "2",letters[1:5], "3")
> as.numeric(a)
[1]  1  2 NA NA NA NA NA  3
Warning message:
NAs introduced by coercion 

对于第二个和第三个错误:

看看下面的链接:

在 R 中定义线性模型时的对比错误

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM