J'essaie de comparer deux modèles de prédiction différents en calculant l'erreur de prédiction au carré moyen.Évaluez les modèles de prédiction en calculant l'erreur moyenne de prédiction au carré
Voici le lien vers le jeu de données earnings.csv dataset
utilisation 2000-2006 années de données que l'ensemble de données de formation et les données de 2007-2008 comme l'ensemble de données de test.
Utilisez à la fois les fonctions decompose() et stl() dans R pour décomposer la série temporelle en composants de tendance, de saisonnalité et d'erreur.
Utilisez la fonction lm() dans R pour adapter un modèle linéaire au composant de tendance. Ensuite, prédisez les gains mensuels pour l'année 2007-2008.Comparez les prédictions sous les deux méthodes avec l'ensemble de données de test, à la fois graphiquement et en calculant l'erreur de prédiction moyenne au carré de l'échantillon (MSPE).
Discutez des propriétés stochastiques du terme d'erreur des deux méthodes de décomposition différentes.
Voici mon code R:
Data <-read.table("earnings.csv",header = T,sep=",")
tsData <- ts(Data$X,start = 2000, frequency = 12)
plot(tsData,xlab= "Month",ylab = "Earnings")
tsData = log(tsData)
trainingSet = window(tsData,start=2000,end=c(2006,12))
testSet = window(tsData,start=2007,end=c(2008,12))
decompTS =decompose(trainingSet)
stltraining = stl(trainingSet,s.window = "periodic")
lm1 = lm(trainingSet~decompTS$trend)
lm1
lm2 = lm(trainingSet~stltraining$time.series[,2])
lm2
decompTest=(decompose(testSet))$trend
pred1=lm1$coefficients*decompTest
pred2=predict(lm2,decompTest)
plot(pred1)
plot(pred2)
mspe1=mean((testSet-pred1)^2)
La valeur que je suis arrivé pour mspe1 est nulle. Qu'est-ce que j'ai fait de mal ici? Merci pour toute aide
S'il vous plaît voir http://stats.stackexchange.com/help/on-topic pour obtenir des conseils sur ce qui est sur le sujet. Votre question consiste à trouver ce qui ne va pas avec votre code. Lorsque vous donnez accès à un ensemble de données, cela semble être le cas pour Stack Overflow et je vote pour la migration. Notez que votre numéro 4 n'est pas un problème de programmation, et même ici, cela compterait comme une auto-étude. –