應用計量經濟學
生產者計量經濟學:缺少數據的單變數建模
我有興趣預測 2018 年的收入。
Year Revenue 2010 $22,306,000 2011 $22,420,000 2012 $23,010,000 2013 NA 2014 $25,430,000 2015 $25,601,000 2016 $25,267,000 2017 $23,895,400
我無法辨識合適的模型(AR、MA、ARMA 等),因為我缺乏 2013 年的數據,因此無法使用 ACF 和 PACF。
我將如何處理這樣的問題?(最好使用 R)
它被稱為“估算”值。找到 2012 年和 2014 年收入之間的線性趨勢,並估算 2013 年的這個值。在你的情況下,它只是之前和之後收入之間的平均值。
或者,您可以使用周期的平均值,或擬合線性趨勢並進行插值。這些方法使用的資訊不僅僅是兩年,其好處是可以考慮 2012 年或 2014 年可能存在的特殊因素,但代價可能是添加 2017 年的特殊因素。
這是具有三種方法(包括 Alecos 的)的 R 程式碼:
# Interpolate between 2012 and 2014 df = data.frame(year = 2010:2017, y = c(22306000,22420000,23010000,NA,25430000,25601000,25267000,23895400)) df$y[is.na(df$y)] = mean(df$y[df$year==2012 | df$year==2014], na.rm=TRUE) # Replace with mean of period df = data.frame(year = 2010:2017, y = c(22306000,22420000,23010000,NA,25430000,25601000,25267000,23895400)) df$y[is.na(df$y)] = mean(df$y, na.rm=TRUE) # Regression interpolation df = data.frame(year = 2010:2017, y = c(22306000,22420000,23010000,NA,25430000,25601000,25267000,23895400)) fit <- lm(y ~ year, data=df) df$y[df$year==2013] <- predict(fit, newdata = data.frame(year = 2013))
每種方法的結果分別為
24220000
、23989914
和23753107
。它們是不同的,因為該系列不遵循線性趨勢:# Plot df = data.frame(year = 2010:2017, y = c(22306000,22420000,23010000,NA,25430000,25601000,25267000,23895400)) plot(x=df$year,df$y, type="l",lwd = 2)
因此,在這種情況下,似乎 Aleco 的方法可能是最合適的。(也可以擬合非線性趨勢)