[英]R - How to predict values from an artificial data
我對如何根據人工數據預測值感到有些困惑,所以這是我的問題。
我正在嘗試使用以下數據進行簡單的線性回歸(預測):
set.seed(1)
x.train<-runif(1000,0,2)
eps.train<-rnorm(1000,sd=0.1)
y.train<-sin(x.train)+eps.train
model<-lm(y.train~x.train)
confint(modelo,level=0.95)
所以現在,我想我必須做些類似的事情:
set.seed(16)
x.test<-data.frame(runif(100,0,2))
eps.test<-rnorm(100,sd=0.1)
y.test<-sin(x.test)+eps.test
linear_prediction<-predict(model, x.test, interval="prediction")
為了澄清起見,我想使用大小為100的測試數據從大小為1000的“原始”數據中進行預測。
我知道我在代碼的第二部分做錯了什么,但我自己無法解決。 我將不勝感激。 提前致謝。
線性回歸模型中的變量稱為x.train
。 例如,打印模型可以得到
model
Call:
lm(formula = y.train ~ x.train)
Coefficients:
(Intercept) x.train
0.2246 0.4809
但是,在經過testdata
,變量名是runif.100..0..2.
。 為了避免出現警告消息,只需更改測試數據中的變量名稱,然后重新運行預測即可。
colnames(x.test) = c("x.train")
linear_prediction<-predict(model, x.test, interval="prediction")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.