R中的LOESS模型

时间:2017-12-06 11:10:23

标签: r loess

我正在尝试使用LOESS模型根据自变量X

预测Y.

数据样本是,

.a {
    position: absolute;
    width: 100%;
    height: 50px;
    background-color: pink;
    overflow: hidden;
}
.b {
    position: absolute;
    width: 1440px;
    height: 100%;
}
.b p {
    // width: 480px;
    // height: 100%;
    margin-left: 400px;
    float: left;
}
.play {
    animation: ma 10s 3s infinite linear;
}
@keyframes ma {
    0% {
        margin-left: 0px;
    }
    100% {
        margin-left: -1200px;
    }
}
.play:hover {
    animation-play-state: paused;
}
我使用的步骤如下,

x <- c(10, 20, 25, 32, 40)    
y <- c(1200, 1400, 1460, 1620, 1800)

在上面的数据样本中,我们只有1个自变量x。

现在如果我们有2个自变量怎么办?如何获取以下样本数据的模型,

lw1 <- loess(y ~ x,data=data)            
plot(y ~ x, data=data,pch=19,cex=0.1)               
j <- order(data$x)              
lines(data$x[j],lw1$fitted[j])                 

请帮我一个R样本,我们如何在LOESS模型中处理X1和X2 ???

1 个答案:

答案 0 :(得分:1)

以下是loess(y ~ x1 + x2)predict的示例:

fit <- loess(y ~ x1 + x2);

pred <- data.frame(ypred = predict(fit, data.frame(x1 = x1, x2 = x2)));
pred$x1 <- x1;
pred$x2 <- x2;
pred$y <- y;

pred;
#      ypred x1  x2    y
#1 1199.8667 10 1.2 1200
#2 1016.4015 20 1.4 1400
#3  728.8215 25 1.5 1460
#4 1620.0000 32 2.1 1620
#5 1799.6245 40 2.8 1800

样本数据

x1 <- c(10,20,25,32,40)                   
x2 <- c(1.2,1.4,1.5,2.1,2.8)                
y <- c(1200,1400,1460,1620,1800);