I posted earlier todaypredict
기능을 사용하면서 오류가 발생했습니다. 나는 그것을 바로 잡을 수 있었고, 나는 올바른 길에 있다고 생각했다.Predict() - 아마도 이것을 이해하지 못하고 있습니다
나는 다수의 관측치 (실제)가 있으며, 내가 추측하거나 예측하고자하는 몇 가지 데이터 포인트가 있습니다. lm
을 사용하여 모델을 만든 다음 predict
을 예상 값 입력으로 사용할 실제 값과 함께 사용하려고했습니다.
이 코드는 모든 내 이전 게시물에서 반복하지만, 여기있다 :
df <- read.table(text = '
Quarter Coupon Total
1 "Dec 06" 25027.072 132450574
2 "Dec 07" 76386.820 194154767
3 "Dec 08" 79622.147 221571135
4 "Dec 09" 74114.416 205880072
5 "Dec 10" 70993.058 188666980
6 "Jun 06" 12048.162 139137919
7 "Jun 07" 46889.369 165276325
8 "Jun 08" 84732.537 207074374
9 "Jun 09" 83240.084 221945162
10 "Jun 10" 81970.143 236954249
11 "Mar 06" 3451.248 116811392
12 "Mar 07" 34201.197 155190418
13 "Mar 08" 73232.900 212492488
14 "Mar 09" 70644.948 203663201
15 "Mar 10" 72314.945 203427892
16 "Mar 11" 88708.663 214061240
17 "Sep 06" 15027.252 121285335
18 "Sep 07" 60228.793 195428991
19 "Sep 08" 85507.062 257651399
20 "Sep 09" 77763.365 215048147
21 "Sep 10" 62259.691 168862119', header=TRUE)
str(df)
'data.frame': 21 obs. of 3 variables:
$ Quarter : Factor w/ 24 levels "Dec 06","Dec 07",..: 1 2 3 4 5 7 8 9 10 11 ...
$ Coupon: num 25027 76387 79622 74114 70993 ...
$ Total: num 132450574 194154767 221571135 205880072 188666980 ...
코드 :
model <- lm(df$Total ~ df$Coupon, data=df)
> model
Call:
lm(formula = df$Total ~ df$Coupon)
Coefficients:
(Intercept) df$Coupon
107286259 1349
코드를 예측 (이전의 도움 기준) :
(다음은 예측 된 값을 얻기 위해 사용하려는 예측 값입니다.)
Quarter = c("Jun 11", "Sep 11", "Dec 11")
Total = c(79037022, 83100656, 104299800)
Coupon = data.frame(Quarter, Total)
Coupon$estimate <- predict(model, newdate = Coupon$Total)
내가 모델이 21 명 관찰했다 구축하는 데 사용
Error in `$<-.data.frame`(`*tmp*`, "estimate", value = c(60980.3823396919, :
replacement has 21 rows, data has 3
내 원래 데이터 프레임 : 나는 것을 실행할 때
지금,이 오류 메시지가 표시됩니다. 나는 현재 모델을 기반으로 3 가지 값을 예측하려고합니다.
이 기능을 제대로 이해하지 못하거나 코드에 오류가 있습니다.
도움을 받으실 수 있습니다.
당신은 거의 확실히't이 작동시킬 수 lm'하기 위해'data' 인수를 사용할 필요가 새로운 데이터 세트를 생성하지 않고 둥지에 두 개의 기능입니다, 즉'모델 <- LM (총 ~ 쿠폰 , data = df)'이다. 그럼 나는'Coupon $ estimate <- predict (model, newdata = Coupon) $ Total'을 제안 할 것이다. –
@BenBolker 나는 첫 번째 부분에 동의한다. 나는'predict (model, newdata = Coupon)'가 그가 원하는 것이어야한다고 생각한다. – joran
@ joran 네, 맞습니다. –