2018年9月10日月曜日

addLegend() spline() grid.ticks.on=



# > length(SP5.result[,1])
# [1] 74
# 74 is equal to length(as.vector(SP5.result[,2])), which is quarterly basis as GDP is available only on that term.
# The number of months between those 74 qtr. is 73 * 3 +1 = 220.
# Thus it is able to convert quarterly basis data into monthly.
# > length(to.monthly(GSPC)["::2018-06-30"][,1])
# [1] 138
# > k2k
# [1] "2000-01-01::2018-06-30"

result <- lm(apply.quarterly(SP5[k2k],mean)[,1] ~ PAq[k2k] * UCq[k2k] * G[k2k]*CSq[k2k] - UCq[k2k] -G[k2k] - PAq[k2k]*G[k2k] - UCq[k2k]*G[k2k]*CSq[k2k])
SP5.result <- merge(residuals(result),predict(result))
GSPC.predict <- merge(to.monthly(GSPC)["::2018-06-30"],last(spline(seq(1,74,1),as.vector(SP5.result[,2]),n=220)$y,n=138),suffixes=c('','spline'))
plot(merge(GSPC.predict[,7],GSPC.predict[,4],GSPC.predict[,4]-GSPC.predict[,7]),main="GSPC.predict[,4] vs. GSPC.predict[,7]",grid.ticks.on='months')
tmp.legend <- "Black: theory \nRed: Actual\nGreen: residuals"
addLegend(legend.loc = "topleft", legend.names = tmp.legend,col=3)


result <- lm(apply.quarterly(SP5[k2k],mean)[,1] ~ PAq[k2k] * UCq[k2k] * G[k2k]*CSq[k2k] - UCq[k2k] -G[k2k] - PAq[k2k]*G[k2k] - UCq[k2k]*G[k2k]*CSq[k2k])
SP5.result <- merge(residuals(result),predict(result))
GSPC.predict <- merge(to.monthly(GSPC)[substr(k2k,11,23)],last(spline(seq(1,length(SP5.result[,1]),1),as.vector(SP5.result[,2]),n=length(SP5.result[,1])*3+1)$y,n=length(to.monthly(GSPC)[,1][substr(k2k,11,23)])),suffixes=c('','spline'))
plot(merge(GSPC.predict[,7],GSPC.predict[,4],GSPC.predict[,4]-GSPC.predict[,7]),main="GSPC.predict[,4] vs. GSPC.predict[,7]",grid.ticks.on='months')
tmp.legend <- "Black: theory \nRed: Actual\nGreen: residuals"
addLegend(legend.loc = "topleft", legend.names = tmp.legend,col=3)




0 件のコメント: