繁体   English   中英

使用R线性回归的机器学习

[英]Machine Learning using R linear regression

我将R用于机器学习代码。 我的项目方案如下所述。 我使用MongoDB进行数据库存储。 在mongo db中,我每5分钟在该集合中有一个集合。 添加了一个新文档。 集合描述如下。

 {
"_id" : ObjectId("521c980624c8600645ad23c8"),
"TimeStamp" : 1377605638752,
"cpuUsed" : -356962527,
"memory" : 2057344858,
"hostId" : "200.2.2.2"
 }

现在我的问题是,使用以上文档,我想预测接下来的5分钟,10分钟或24小时。 cpuUsed和内存值。 为此,我编写R代码如下

library('RMongo')
mg1 <- mongoDbConnect('dbname')
query <- dbGetQuery(mg1,'test',"{'hostId' : '200.2.2.2'}")
data1 <- query[]
cpu <- query$cpuUtilization
memory <- query$memory
new <- data.frame(data=1377678051) # set timestamp for calculating results
predict(lm(cpu ~   data1$memory + data1$Date ), new, interval="confidence")

但是,当我执行上面的代码时,它向我显示以下输出

           fit        lwr       upr
    1    427815904  -37534223 893166030
    2   -110791661 -368195697 146612374
    3    137889445 -135982781 411761671
    4   -165891990 -445886859 114102880
    .
    .
    .
    n    

使用此输出,我不知道哪个cpuUsed值用于预测值。 如果有人知道,请帮助我。 谢谢。

预测的newdata参数需要包含在拟合中使用的变量:

new <- data.frame(memory = 1377678051, Date=as.Date("2013-08-28))

只有这样,它才实际用于预测,否则您将获得拟合值。

然后,您可以将预测值与new cbind

暂无
暂无

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

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