sprawozdanie z przeprowadzonego projektu

Transkrypt

sprawozdanie z przeprowadzonego projektu
INFORMATYKA I EKONOMETRIA ROK III
SPRAWOZDANIE Z
PRZEPROWADZONEGO
PROJEKTU
Wykonali:
Izabela Jakubowska, Natalia Krejckant, Piotr Pomichowski
2013-06-13
SPIS TREŚCI:
Przedmowa
1. Teoria: charakterystyka danych, postać modelu, proces modelowania.
1.1 Pozyskanie, selekcja i charakterystyka danych.
1.2 Postać modelu i wybór metody estymacji.
1.3 Proces modelowania: zjawisko heteroskedastyczności i autokorelacji.
1.4 Prognozy.
2. Testy
2.1 Badanie heteroskedastyczności
2.2 Badanie autokorelacji
2.3 Badanie normalności rozkładu reszt
2.4 Badanie poprawności funkcyjnej modelu
2.5 Reguła decyzyjna
3. Wyniki
4. Wnioski
Literatura
Informatyka i Ekonometria rok III
Strona 2
PRZEDMOWA
Celem niniejszego projektu jest zbadanie zależności ceny mieszkania wystawionego na rynku
wtórnym w Warszawie od poszczególnych czynników tj.: metraż, liczba pokoi, piętro, rok budowy,
dzielnica. W tym celu stworzono i estymowano dopasowany model ekonometryczny, który najlepiej
odzwierciedla charakterystykę opisywanego zjawiska. Dzięki różnego rodzaju narzędziom
ekonometrycznym zbadano poprawność obranych działań, poddano model wielu testom
potwierdzającym obrane założenia, a także dokonano modyfikacji w miejscach gdzie było to
konieczne. W końcowym etapie obliczono prognozy na następne okresy oraz wysunięto wnioski
dotyczące całości badanego zjawiska.
Informatyka i Ekonometria rok III
Strona 3
1. TEORIA: CHARAKTERYSTYKA DANYCH, POSTAC MODELU,
PROCES MODELOWANIA.
1.1 Pozyskanie, selekcja i charakterystyka danych.
Do procesu estymacji i weryfikacji prognoz pozyskano dane mieszkań składające się z cech
takich jak: ceny mieszkania, dzielnicy, w której się ono znajduje, powierzchni, liczby pokoi, numeru
piętra, roku budowy, ceny za metr kwadratowy, a także daty dodania danego ogłoszenia. Dane te
poddano pewnym przekształceniom : modyfikacja wartości zmiennej o nazwie „Piętro”, odrzucanie
niewłaściwych obserwacji, modyfikacja zmiennych o nazwie „Dzielnica”. Ich stan ulega zmianie, po
każdym z wykonanych etapów. Opis całego procesu wraz z odpowiednim zestawem danych zawiera
załącznik nr.1.
1.2 Postać modelu i wybór metody estymacji.
Tworzenie modelu ekonometrycznego na podstawie danych obejmuje obserwacje do roku
2012 włącznie. Rok 2013 przeznaczono na wyznaczenie prognoz, a także różnego rodzaju błędów
oceniających dokładność prognozowania. Dla usprawnienia obliczeń, skorzystano z programu „R
Project” oferującego szeroką gamę funkcji i testów badających i analizujących zjawisko, z którym
mamy do czynienia. Uogólniając zebrano 2612 obserwacji ze zmienną zależną: logarytm ceny
mieszkania w Warszawie i zmiennymi niezależnymi: dzielnica, powierzchnia, liczba pokoi, piętro,
rok. Postać modelu wygląda następująco:
Y= a0+a1*x1+a2*x2+a3*x3+a4*x4+a5*x5 (1 .2.1)
gdzie:
Y- logarytm ceny mieszkania
X1 - dzielnica jako zmienna ilościowa (patrz załącznik nr.1)
X2 – powierzchnia
X3 – liczba pokoi
X4 – piętro
X5 – rok
Zanim zdecydowano się na wybranie jednej z wielu dostępnych funkcji szacujących,
dokonano wiele obliczeń oraz dochodzono do różnych wniosków.
Pierwszą, a zarazem najbardziej popularną metodą szacowania jest KMNK( klasyczna metoda
najmniejszych kwadratów). Jej prostota niesie jednak ze sobą wiele przeszkód jakim jest m.in.
różnorodność wariancji, o której świadczy heteroskedastyczność. W związku z tym, zrezygnowano z
tego sposobu.
Kolejnym sposobem jest wykorzystanie funkcji nls() dostępnej w programie obsługującym
wszelkie obliczenia za pośrednictwem języka „r”. Nonlinear Least Squares, czyli rozwinięcie skrótu
nls stanowi inny ze sposobów oszacowania tego modelu, jednak w porównaniu do KMNK jest
bardziej odpowiedni, m.in. ze względu na to, iż obsługuje on modele nieliniowe. Po oszacowaniu
utworzonej postaci funkcyjnej, uruchomiono testy wykazujące niepożądane zjawisko różnorodności
wariancji, autokorelacji, braku normalności rozkładu reszt. Istnieją sposoby, by pozbyć się tego
Informatyka i Ekonometria rok III
Strona 4
rodzaju uchybień, jednak podjęto inną decyzję. Warto dodać, że oszacowania parametrów zarówno
metodą KMNK jak i funkcją nls() wychodzą na bardzo podobnym poziomie.
Ostatecznie postanowiono skorzystać funkcji glm(), dostępnej w „R Project” o nazwie Fitting
Generalized Linear Models służy do dopasowania uogólnionych modeli liniowych, a w szczególności
modeli regresji logistycznej. Jak łatwo zauważyć metoda ta nawiązuje do klasycznej MNK i należy
oczekiwać zjawiska heteroskedastyczności. Mimo to, zdecydowano się właśnie na tę funkcję, gdyż
sposób jej implementacji i składnia jest bardzo pomocna w dalszych badaniach, testach i innych
obliczeniach. Natomiast zjawiska heteroskedastyczności, a także autokorelacji można się pozbyć
dostępnymi w ekonometrii metodami. Ogólnie rzecz biorąc, glm() jest doskonałym narzędziem do
sprawnego opracowania modelu ekonometrycznego, a to wszystko dzięki uniwersalnemu kodowi
napisanemu w języku r, zawierającemu dostępne funkcje. Oszacowane parametry mają prawie taką
samą wartość jak te, uzyskane KMNK lub funkcja nls(), co było dodatkowym argumentem
popierającym ideę skorzystania z funkcji glm().Kod ten jest napisany w specjalny sposób tak, aby
można było go powielać, bez konieczności modyfikowania w zależności od danych.
1.3 Proces modelowania : zjawisko heteroskedastyczności i autokorelacji.
Pierwsze próby estymacji modelu wykazały pojawienie się m.in. zjawiska
heteroskedastyczności, a także autokorelacji. Przyczyną heteroskedastyczności może być zarówno
niepoprawna forma funkcyjna modelu, jak i ominięcie istotnych zmiennych. Innymi, równie ważnymi
czynnikami wpływającymi na pojawienie się heteroskedastyczności może być jakość zbioru danych, a
także po prostu natura badanego zjawiska.
Różnorodność wariancji, jako zjawisko niepożądane, powoduje, że uzyskane estymatory są
nieobciążone , zgodne, ale nieefektywne. W związku z tym konieczna jest modyfikacja metod
estymacji wariancji oszacowanych parametrów, tak by ją zlikwidować. Ze względu na to, iż badania
ekonometryczne, charakteryzują się brakiem stałości wariancji składnika losowego, użyliśmy
WMNK:
(2 .3.1)
(1.3.2)
(1.3.3)
Autokorelacja reszt, przynosi podobne skutki do tych, które można zaobserwować przez
pojawienie się zjawiska różnorodności wariancji w modelu, czyli obniżenie efektywności estymatora.
Często jej przyczyną jest przeszacowanie współczynnika determinacji liniowej. Jest to zjawisko
bardzo niepożądane, ze względu na to, iż składniki losowe dla obserwacji pochodzących z różnych
okresów nie są niezależne, lecz skorelowane.
Informatyka i Ekonometria rok III
Strona 5
Metoda Cochrane Orcutt jest jedną z propozycji, dzięki której można usunąć autokorelację
składnika losowego z modelu. Polega ona, podobnie jak WMNK, na transformacji danych i
ponownym oszacowaniu modelu, w oczekiwaniu aż zjawisko autokorelacji zniknie. Pierwszym
krokiem jest obliczenie współczynnika autokorelacji rho, po którym można rozpocząć zmianę postaci
zmiennych, a w końcowym etapie ponownie oszacować nowy model:
Dla pierwszej obserwacji:
(1.3.4)
Dla następnych obserwacji:
(1.3.5)
1.4 Prognozy
Wyliczanie prognoz w modelu wykonano poprzez użycie obserwacji pochodzących z 2013
roku. Dzięki temu uzyskano błędy ex post.
Mierniki ex post są wartościami odchyleń rzeczywistych realizacji zmiennej prognozowanej
od obliczonych prognoz. Można je obliczać dla każdego momentu lub okresu należącego do
przedziału czasu [n+1,……,T]. Prognozy ex post oparte są na znanych wartościach zmiennych
objaśniających. W momencie kiedy poznajemy zrealizowaną wartość zmiennej prognozowanej –
prognoza ex post staje się prognozą wygasłą.
Mierniki ex post:
Średni błąd prognozy(ME): ME mówi nam o ile średnio wartość rzeczywistej zmiennej objaśnianej
różni się od obliczonych prognoz, w całym okresie prognozowania.
(1.4.1)
ME 
1 m
( y  yP )

m  1
Średni absolutny błąd predykcji(MAE): MAE charakteryzuje to samo zjawisko co średni błąd
prognozy, uwzględniając wynik w wartości bezwzględnej.
(1.4.2)
MAE 
1 m
 y  yP
m  1
Informatyka i Ekonometria rok III
Strona 6
Średni absolutny błąd procentowy(MAPE): informuje nas o średniej wielkości błędów prognoz,
wyrażonych w %.
(1.4.3)
1 m y  yP
MAPE  
100
m  1
y
Pierwiastek błędu średniokwadratowego(RMSE): Wartość RMSE mierzy o ile średnio odchylają
się realizacje zmiennej prognozowanej od obliczonych prognoz. Znacząca różnica wartości pomiędzy
RMSE, a MAE wskazuje na występowanie w okresie prognozy błędów o bardzo dużych wartościach.
(1.4.4)
RMSE 
1 m
( y  yP ) 2

m  1
2. TESTY
2.1 Badanie heteroskedastyczności
Test White’ a, jest bardzo ogólny i przeprowadzany jest poprzez estymację modelu, w którym
zmienną objaśniającą stanowią kwadraty reszt pierwotnego modelu, zaś zmiennymi objaśniającymi są
oryginalne zmiennie niezależne, ich kwadraty, a także ich wszystkie możliwe iloczyny. Jest to dość
duża wada, która wynika głównie z konieczności zwiększania liczby zmiennych objaśniających.
Dodatkowo test ten wymaga poprawnego skonstruowania postaci funkcji regresji. W przeciwnym
wypadku, odrzucenie hipotezy zerowej, może wynikać jedynie z zastosowania niewłaściwej formy
funkcji.
Test Goldfelda i Quandta nie jest obarczony takimi problemami jak test White’ a.
Porównuje on wariancje reszt w dwóch podpróbach, które zostały otrzymane poprzez uporządkowanie
badanej zmiennej, prawdopodobnie skorelowanej z wariancją reszt. Wariancje te wyznaczamy,
estymując dwa modele, dla każdej podpróby oddzielnie. Hipotezę zerową, należy odrzucić w
przypadku gdy istnieje powyższa zależność. Oznacza to, że wariancje w obydwu podpróbach są
bardzo różnorodne. Pamiętać należy jednak, że korzystanie z testu Goldfelda i Quandta wymaga
normalności rozkładu reszt, którego badany przez nas model nie posiada. W dodatku jest on
przeprowadzany dla każdej zmiennej objaśniającej osobno, więc im wyższa jest liczba zmiennych,
tym większe ryzyko wystąpienia błędu I rodzaju ( odrzucenie hipotezy zerowej, która w
rzeczywistości jest prawdziwa).
Należący do klasy testów mnożnika Lagrange’ a, test Breuscha Pagana, wykorzystano w
projekcie, za każdym razem, gdy zaistnieje potrzeba zbadania heteroskedastyczności reszt. Jest to
najlepszy wybór, z pośród wszystkich dostępnych opcji m.in. dlatego, że bada on
heteroskedastyczność reszt dla wszystkich zmiennych objaśniających łącznie. W przeciwieństwie do
testu White’ a nie wymaga on konstruowania postaci funkcyjnej modelu i nie jest ona znana w
Informatyka i Ekonometria rok III
Strona 7
ogólnym przypadku. Okazuje się jednak, że bez względu na formę regresji, możliwe jest obliczenie
statystyki testowej. Podobnie jak test Goldfelda i Quandta konieczne jest spełnienie warunku o
normalnym rozkładzie reszt. Jednak istnieje modyfikacja statystyki testowej Koenkera, omijająca ten
problem. Poniżej opisana jest charakterystyka testu Breuscha Pagana:
Równanie modelu:
(2.1.1)
Równanie pomocnicze:
(2.1.2)
Hipotezy:
(2.1.3)
(2.1.4)
Homoskedastyczność reszt przynajmniej jeden
Heteroskedastyczność reszt
Statystyka testowa:
(2.1.5)
gdzie ESS - wyjaśniona suma kwadratów (z równania pomocniczego)
lub
(2.1.6)
( z równania pomocniczego)
2.2 Badanie autokorelacji
Test Durbina Watsona jest jednym z najpopularniejszych testów przeznaczonych do badania
autokorelacji reszt. Pomimo wielu zalet, nie użyto go w projekcie, ponieważ wymaga on założenia o
normalności rozkładu składnika losowego. Warto też zwrócić uwagę na jego wady, którą m. in. jest
Informatyka i Ekonometria rok III
Strona 8
fakt, że dla niektórych wartości statystyka testowa ma nieznany rozkład (np. dla liczby zmiennych
większej od 8 i liczby obserwacji większej od 101), a wtedy niemożliwe jest podjęcie żadnej decyzji.
Testy Boxa i Pierce’ a oraz Breuscha Godfrey’ a pozbawione są tych wad i ograniczeń,
którymi obarczony jest test Durbina Watsona, dlatego też z powodzeniem wykorzystano go do
badania autokorelacji reszt modelu. Dodatkowo test Boxa umożliwia badanie autokorelacji dowolnego
rzędu ( za pośrednictwem opcji lag), podczas gdy Durbin Watson zakłada badanie jedynie I rzędu.
Bardziej skomplikowany, choć równie dobry i skuteczny wydaję się test należący do klasy
mnożników Lagrange’ a o nazwie test Breuscha Godfreya. Jednak dzięki środowisku R, wszystkie
obliczenia, wykonywane są sprawnie i szybko.
Charakterystyka testu Boxa Pierce’ a:
Statystyka testowa:
(2.2.1)
Hipotezy:
(2.2.2)
H0: ρh = 0 (brak autokorelacji składnika losowego)
(2.2.3)
H1: ρh ≠ 0 (występuje autokorelacja)
gdzie n – liczba obserwacji, m – badany rząd autokorelacji , ρh współczynnik autokorelacji h - tego
rzędu.
Charakterystyka testu Breuscha Godfrey` a:
Model pierwotny:
(2.2.4)
yt  0  1 xt1  ...   k xtk   1 yt 1  ...   s yt s  t
(t  1,2,..., T )
t  1t 1  2t 2  ...   pt  p  t ; (t  p  1,..., T )
Model pierwotny jest szacowany MNK i reszty z pierwszego oszacowania wykorzystywane są jako
zmienne objaśniające:
yt   0  1 xt1  ...   k xtk   1 yt 1  ...   s yt  s  1ˆt 1 
 2ˆt  2  ...   pˆt  p   t
Informatyka i Ekonometria rok III
Strona 9
 2p ( ) 
S (k )  S (k  p)
S (k ) / T
( S (k ) ) to suma kwadratów reszt dla modelu bez reszt w roli zmiennych objaśniających,
(S (k  p) )
suma kwadratów reszt w modelu, w którym reszty w kolejnych opóźnieniach są
zmiennymi objaśniającymi.
2.3 Badanie normalności rozkładu reszt
Wyprowadzając wszystkie statystyki testowe zakładano normalność reszt. W próbach
nieskończonych założenie o normalności nie jest zbyt restrykcyjne, ponieważ z Centralnego
Twierdzenia Granicznego (CTG) wiemy, ze suma n niezależnych zmiennych losowych o
jednakowych, aczkolwiek dowolnych rozkładach, zbiega według rozkładu do rozkładu
normalnego. W praktyce twierdzenie to interpretuje się następująco dla dostatecznie dużej
liczby zmiennych losowych o rozkładzie ze średnią µ i wariancją δ ich suma ma rozkład
N(µ;δ). Wobec tego, niezależnie od rozkładu składnika losowego asymptotyczne rozkłady
statystyk testowych będą poprawne o ile zmienne są niezależne.
Charakterystyka testu Jarque Bery:
W rozkładzie normalnym miara skośności S=0 oraz miara kurtozy K=3
(2.3.1)
S
32
 23
 2 , 3 ,  4
to drugi, trzeci i czwarty moment centralny rozkładu
(2.3.2)
K 
gdzie
4
 22
Hipotezy:
(2.3.3) i (2.3.4)
H 0 : t ~ N
H A :  t nie ma N
Statystyka testowa:
Informatyka i Ekonometria rok III
Strona 10
(2.3.5)
 S 2 K  32 
JB  T  

6
24


2.4 Badanie poprawności funkcyjnej modelu
Charakterystyka testu Reset:
Równanie modelu:
(2.4.1)
yt  0  1 xt1  ...   k xtk   2 ( yˆt )   3 ( yˆt )  ....   p ( yˆt )  t
2
3
p
Hipotezy testu:
(2.4.2) i (2.4.3)
H 0 :  2   3  ...   p  0
H :    0
 A i i
Statystyka dla dużych prób:
(2.4.4)
 2p 1 ( ) 
gdzie: ( S
(k )
S ( k )  S ( k  p 1)
S (k ) / T
asymp.
~
 2p 1
) - suma kwadratów reszt z modelu bez wartości teoretycznych y.
( S ( k  p 1) ) - suma kwadratów reszt z modelu poszerzonego.
2.5 Reguła decyzyjna
Wszystkie przeprowadzone testy, dotyczące tego projektu opierają się na regule decyzyjnej,
według której wyciągano wnioski, w zależności od rodzaju badanego zjawiska. Reguła decyzyjna
składa się z dwóch wartości : poziom istotności oraz graniczny poziom istotności(miara p-stwa
popełnienia błędu I rodzaju).
p value  
p value  
Brak podstaw do odrzucenia hipotezy zerowej
Odrzucamy hipotezę zerową
Informatyka i Ekonometria rok III
Strona 11
3. WYNIKI
Wszystkie obliczenia i testy wykonano za pomocą środowiska „R Project” . Zapis komend
niezbędnych do ich wykonania zawiera załącznik numer 2.
Szacowanie modelu trzema różnymi metodami:
Oszacowane parametry uzyskane metodą KMNK:
a0=11,37911142;a1=0,030036;a2=0,011948;a3=0,019488248;a4= -0,00351; a5=0,000363
Oszacowane parametry uzyskane funkcją nls():
a0=11,37933; a1=0,030035; a2=0,011947; a3=0,019492; a4= -0,00352; a5=0,000363
Oszacowane parametry uzyskane funkcją glm():
a0=10,7754593;a1=0,0306921;a2=0,0118810;a3=0,0199010;a4= -0,0037902; a5=0,0006658
Oszacowane parametry mają w przybliżeniu takie same wartości, więc zdecydowano się
skorzystać z funkcji glm(). Kod tej funkcji jest napisany w specjalny sposób tak, aby ułatwić pracę
oraz przeprowadzenie testów.
Oszacowanie modelu:
Call:
glm(formula = ln_cena ~ dzielnica + pow + lp + pietro + rok,
family = gaussian(), data = dane2, na.action = na.omit)
Deviance Residuals:
Min
1Q
Median
-1.62974 -0.13763 -0.01131
3Q
0.13769
Max
1.04767
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 10.7754593 0.2115016 50.947 < 2e-16 ***
dzielnica
0.0306921 0.0009893 31.024 < 2e-16 ***
pow
0.0118810 0.0002242 52.995 < 2e-16 ***
lp
0.0199010 0.0073092
2.723 0.00652 **
pietro
-0.0037902 0.0015792 -2.400 0.01646 *
rok
0.0006658 0.0001060
6.283 3.88e-10 ***
--Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for gaussian family taken to be 0.05115835)
Null deviance: 697.97
Residual deviance: 133.32
AIC: -344.5
on 2611
on 2606
degrees of freedom
degrees of freedom
Number of Fisher Scoring iterations: 2
Wniosek: Dzięki funkcji glm() zaobserwowano, iż wszystkie zmienne są istotne dla modelu (przy
każdej zmiennej są *), a także otrzymano oszacowania parametrów:
a0=10,7754593;a1=0,0306921;a2=0,0118810;a3=0,0199010;a4= -0,0037902; a5=0,0006658
Testy na normalność reszt, heteroskedastyczności i autokorelacji:
Jarque-Bera Normality Test
data:
model$resid
Informatyka i Ekonometria rok III
Strona 12
JB = 575.6653, p-value < 2.2e-16
alternative hypothesis: greater
studentizedBreusch-Pagan test
data: model
BP = 517.9438, df = 5, p-value < 2.2e-16
Box-Ljung test
data: model$resid
X-squared = 43.3719, df = 1, p-value = 4.526e-11
Breusch-Godfrey test for serial correlation of order up to 1
data: model
LM test = 43.6216, df = 1, p-value = 3.984e-11
Wniosek: Przeprowadzone testy niestety nie wyszły zbyt pomyślnie, gdyż wartości p-value w
każdym przypadku są bardzo małe. Reszty modelu nie mają rozkładu normalnego. Dodatkowo jest on
obarczony heteroskedastycznością, a także autokorelacją. O wszystkim tym przesądza fakt, iż żadna z
wartości p-value nie przekracza poziomu 0,05, a nawet 0,01.
Eliminacja heteroskedastyczności:
Call:
glm(formula = kwareszt ~ dzielnica + pow + lp + pietro + rok,
family = gaussian(), data = dane2, na.action = na.omit)
Deviance Residuals:
Min
1Q
Median
-0.29701 -0.09503 -0.02630
3Q
0.06920
Max
1.23357
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 1.162e+00 1.274e-01
9.117 < 2e-16 ***
dzielnica
4.632e-03 5.960e-04
7.771 1.11e-14 ***
pow
1.835e-03 1.351e-04 13.585 < 2e-16 ***
lp
-3.503e-02 4.403e-03 -7.954 2.66e-15 ***
pietro
-1.197e-03 9.513e-04 -1.258
0.209
rok
-5.382e-04 6.385e-05 -8.429 < 2e-16 ***
--Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for gaussian family taken to be 0.01856656)
Null deviance: 56.064
Residual deviance: 48.384
AIC: -2991.9
on 2611
on 2606
degrees of freedom
degrees of freedom
Number of Fisher Scoring iterations: 2
Wniosek: Powyższe wyniki wykazują, że zmienna „piętro” nie jest istotna dla modelu (brak * przy
zmiennej). Konieczna jest zatem ponowna estymacja, nieuwzględniająca tej zmiennej.
Call:
glm(formula = kwareszt ~ dzielnica + pow + lp + rok, family = gaussian(),
data = dane2, na.action = na.omit)
Informatyka i Ekonometria rok III
Strona 13
Deviance Residuals:
Min
1Q
Median
-0.29505 -0.09567 -0.02620
3Q
0.07003
Max
1.23332
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 1.169e+00 1.273e-01
9.183 < 2e-16 ***
dzielnica
4.544e-03 5.920e-04
7.676 2.31e-14 ***
pow
1.843e-03 1.349e-04 13.661 < 2e-16 ***
lp
-3.518e-02 4.402e-03 -7.992 1.98e-15 ***
rok
-5.440e-04 6.368e-05 -8.542 < 2e-16 ***
--Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for gaussian family taken to be 0.0185707)
Null deviance: 56.064
Residual deviance: 48.414
AIC: -2992.3
on 2611
on 2607
degrees of freedom
degrees of freedom
Number of Fisher Scoring iterations: 2
Wniosek: Ponowne oszacowanie modelu uwidacznia nam, że problem z istotnością pojedynczych
zmiennych zniknął. Możemy zatem zaakceptować oszacowania parametrów.
Kolejnym krokiem jest wyznaczenie wag, będących odwrotnością teoretycznych wartości
estymowanego powyżej modelu. Otrzymany wektor reszt przemnożono przez macierz danych i
ponownie oszacowano model funkcją glm(), w którym zmienną objaśnianą jest logarytm z ceny, zaś
zmiennymi objaśniającymi są: dzielnica, powierzchnia, liczba pokoi, piętro oraz rok. Wykonano od
razu także test Breuscha Pagana by sprawdzić czy ważona MNK okazała się skuteczna. Obliczenia te,
będą wykonane na nowych zmiennych (dane2) zmodyfikowanych dzięki wagom:
Wyniki wyświetlone na ekranie:
Call:
glm(formula = ln_cena ~ dzielnica + pow + lp + pietro + rok,
family = gaussian(), data = dane2, na.action = na.omit)
Deviance Residuals:
Min
1Q
Median
-6.1211 -0.7682 -0.0662
3Q
0.7549
Max
4.7500
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 6.044e+00 3.156e-01 19.152 < 2e-16 ***
dzielnica
1.618e-03 1.881e-03
0.860
0.3898
pow
2.278e-03 5.703e-04
3.994 6.66e-05 ***
lp
2.237e-01 1.185e-02 18.883 < 2e-16 ***
pietro
-3.047e-03 1.306e-03 -2.332
0.0198 *
rok
5.788e-03 1.481e-05 390.674 < 2e-16 ***
--Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for gaussian family taken to be 1.507519)
Null deviance: 1285526.4
Residual deviance:
3928.6
AIC: 8492.7
on 2611
on 2606
degrees of freedom
degrees of freedom
Number of Fisher Scoring iterations: 2
wsp_det(model$fitted,dane2$ln_cena)
Informatyka i Ekonometria rok III
Strona 14
[1] 0.996944
studentizedBreusch-Pagan test
data: model
BP = 43.9565, df = 5, p-value = 2.364e-08
Wniosek: Otrzymane informacje wykazują bardzo wysoki współczynnik determinacji, co jest bardzo
dobrą cechą. Oznacza to, że aż 99% zmienności zmiennej objaśnianej jest wyjaśniane przez model.
Widać także, że zmienna o nazwie „dzielnica” nie jest istotna dla naszego modelu. Jest to bardzo
niepokojące zjawisko, gdyż jedną z cech najbardziej determinujących cenę mieszkania w Warszawie,
jest jego umiejscowienie. W związku z tym na tym etapie badań postanowiono nie brać tego pod
uwagę. Jednak najbardziej niezadowalającym faktem jest istnienie heteroskedastyczności, pomimo
prób jej likwidacji. Zatem ponownie poddano model ważonej MNK, w celu usunięcia zjawiska
różnorodności wariancji.
Wyniki wyświetlone na ekranie:
Call:
glm(formula = ln_cena ~ dzielnica + pow + lp + pietro + rok,
family = gaussian(), data = dane2, na.action = na.omit)
Deviance Residuals:
Min
1Q
Median
-7.3327 -0.8075 -0.0582
3Q
0.7788
Max
4.2975
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 3.483e+00 2.097e-01 16.607
<2e-16 ***
dzielnica
1.725e-02 1.236e-03 13.963
<2e-16 ***
pow
7.188e-03 4.137e-04 17.373
<2e-16 ***
lp
9.965e-02 7.752e-03 12.855
<2e-16 ***
pietro
-2.606e-03 1.288e-03 -2.022
0.0432 *
rok
5.932e-03 8.728e-06 679.625
<2e-16 ***
--Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for gaussian family taken to be 1.63766)
Null deviance: 1499119.3
Residual deviance:
4267.7
AIC: 8708.9
on 2611
on 2606
degrees of freedom
degrees of freedom
Number of Fisher Scoring iterations: 2
>wsp_det(model$fitted,dane2$ln_cena)
[1] 0.9971532
studentizedBreusch-Pagan test
data: model
BP = 13.4774, df = 5, p-value = 0.01929
Wniosek: Wyniki wyświetlone na ekranie dają nowe oszacowania parametrów i wykazują
współczynnik determinacji na poziomie: 0,9971532. Oznacza to, że 99% zmienności zmiennej
objaśnianej jest wyjaśniane przez model. Widać także, że wszystkie zmienne są istotne dla modelu.
Natomiast wartość p-value w teście Breuscha Pagana uwidacznia się na poziomie 0,01929. Jest to
dobra informacja, zważywszy na fakt, że dla poziomu istotności równemu 0,01 nie odrzucamy
hipotezy zerowej o homoskedastyczności składnika losowego.
Informatyka i Ekonometria rok III
Strona 15
Eliminacja autokorelacji:
W związku z tym, że pozbyto się zjawiska heteroskedastyczności składnika losowego, nastał czas na
kolejne badania. Pierwszy z wykonanych testów na autokorelację składnika losowego wykazał, iż
zjawisko to ma miejsce. Test ten należy jednak powtórzyć, gdyż ważona MNK doprowadziła do
zmiany postaci wszystkich zmiennych.
Wyniki wyświetlone na ekranie:
RESET test
data: model
RESET = 1.5204, df1 = 2, df2 = 2604, p-value = 0.2188
Box-Ljung test
data: model$resid
X-squared = 36.8622, df = 1, p-value = 1.268e-09
Breusch-Godfrey test for serial correlation of order up to 1
data: model
LM test = 37.0486, df = 1, p-value = 1.152e-09
Wniosek: Wykonane testy w środowisku „R” wykazały przede wszystkim, że omawiany przez nas
model ekonometryczny ma poprawną postać funkcyjną. Dowodem tego jest wartość p-value na
poziomie równym 0,2188 w teście RESET, która przekracza poziom istotności 0,05. Niestety wyniki
testów na autokorelację składnika losowego Box-Ljunga oraz Breuscha-Godfreya, skłaniają do
odrzucenia hipotezy zerowej.
Metoda Cochrane`a-Orcutta:
Call:
glm(formula = y ~ X - 1, family = gaussian(), na.action = na.omit)
Deviance Residuals:
Min
1Q
Median
-7.7086 -0.8076 -0.0754
3Q
0.7671
Max
4.3971
Coefficients:
Estimate Std. Error t value Pr(>|t|)
X(Intercept) 3.535e+00 2.113e-01 16.729
<2e-16 ***
Xdzielnica
1.687e-02 1.247e-03 13.528
<2e-16 ***
Xpow
7.099e-03 4.147e-04 17.118
<2e-16 ***
Xlp
1.020e-01 7.724e-03 13.210
<2e-16 ***
Xpietro
-2.781e-03 1.274e-03 -2.183
0.0291 *
Xrok
5.930e-03 8.725e-06 679.622
<2e-16 ***
--Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for gaussian family taken to be 1.614908)
Null deviance: 17065543.1
Residual deviance:
4206.8
AIC: 8669.1
on 2611
on 2605
degrees of freedom
degrees of freedom
Number of Fisher Scoring iterations: 2
wsp_det(model2$fitted,y)
Informatyka i Ekonometria rok III
Strona 16
[1] 0.9971609
Wniosek: W wyniku przeprowadzonego oszacowania, na nowej postaci danych, można zauważyć, że
wszystkie zmienne są istotne dla modelu (przy każdej zmiennej znajdują się *). Współczynnik
determinacji jest bardzo wysoki i wg. niego, aż 99% zmienności zmiennej objaśnianej jest wyjaśniane
przez model. Jednak tym co najbardziej nas interesuje na tym etapie, jest to, czy metoda Cochrane
Orcutt spowodowała pozbycie się autokorelacji reszt. Wyniki testu:
Box-Ljung test
data: model2$resid
X-squared = 0.0437, df = 1, p-value = 0.8345
Breusch-Godfrey test for serial correlation of order up to 1
data: model2
LM test = 0.0439, df = 1, p-value = 0.8341
Wniosek: Wykonane w środowisku „R” testy na autokorelację dały bardzo pozytywne wyniki.
Zarówno test Boxa i Pierce’ a jak i test Breuscha Godfrey’ a wykazały, iż metoda Cochrane’ a Orcutta
zlikwidowała zjawisko autokorelacji w modelu. Wartości p- value w obu testach znacznie
przekraczają poziom istotności równy 0,05, co oznacza, że można zaakceptować hipotezę zerową.
Należy jednak pamiętać, że metoda Cochrane’ a Orcutta zmieniła postać danych, co nie tylko wpływa
na autokorelację, ale też i heteroskedastyczność. Koniecznym jest więc ponowne wykonanie testu
Breuscha Pagana, by sprawdzić, czy model, z nowym zbiorem danych charakteryzuję się
różnorodnością wariancji, czy też nie.
studentizedBreusch-Pagan test
data: model2
BP = 16.1508, df = 5, p-value = 0.006427
RESET test
data: model2
RESET = 0.6709, df1 = 2, df2 = 2603, p-value = 0.5113
Wniosek: Test Breuscha Pagana uniemożliwia przyjęcie hipotezy zerowej (p-value<0,05), co
oznacza, że nasz model ponownie został obarczony heteroskedastycznością. Pozytywne wnioski daje
test badający poprawność funkcyjną modelu, który potwierdza to założenie (p-value>0,05).
Jedynym wyjściem z tej sytuacji, jest ponowne użycie ważonej MNK. Nie można zostawić modelu w
takiej postaci, nie zwracając uwagi na zjawisko heteroskedastyczności. Cały proces odbędzie się
dokładnie tak samo jak za poprzednim razem. Wyliczenie kwadratów reszt, stanowiących zmienne
objaśniane w modelu pomocniczym, a następnie wyliczenie wag będących odwrotnością oszacowań
modelu pomocniczego. Wagi te zmienią postać danych, i dzięki temu możliwe będzie pozbycie się
różnorodności wariancji.
Call:
glm(formula = y ~ X - 1, family = gaussian(), na.action = na.omit)
Deviance Residuals:
Min
1Q
Median
Informatyka i Ekonometria rok III
3Q
Max
Strona 17
-7.0568
-0.8258
-0.0673
0.7826
4.4663
Coefficients:
Estimate Std. Error t value Pr(>|t|)
X(Intercept) 3.545e+00 2.090e-01 16.964
<2e-16 ***
Xdzielnica
1.664e-02 1.234e-03 13.481
<2e-16 ***
Xpow
7.126e-03 4.099e-04 17.384
<2e-16 ***
Xlp
1.026e-01 7.656e-03 13.400
<2e-16 ***
Xpietro
-2.696e-03 1.162e-03 -2.319
0.0205 *
Xrok
5.929e-03 8.733e-06 678.857
<2e-16 ***
--Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for gaussian family taken to be 1.653334)
Null deviance: 17657477.3
Residual deviance:
4306.9
AIC: 8730.5
on 2611
on 2605
degrees of freedom
degrees of freedom
Number of Fisher Scoring iterations: 2
wsp_det(model2$fitted,y)
[1] 0.9972584
Wniosek: Nowo oszacowany model dał następujące wyniki: Wszystkie zmienne są istotne dla
modelu, natomiast 99% zmienności zmiennej objaśnianej jest wyjaśniane przed model. Ostatnim
etapem jest wykonanie wszystkich testów, a zwłaszcza na heteroskedastyczność i autokorelację by
przekonać się czy ważona MNK przyniosła oczekiwane skutki.
studentizedBreusch-Pagan test
data: model2
BP = 1.9988, df = 5, p-value = 0.8493
Box-Ljung test
data: model2$resid
X-squared = 0.005, df = 1, p-value = 0.9436
Breusch-Godfrey test for serial correlation of order up to 1
data: model2
LM test = 0.005, df = 1, p-value = 0.9434
RESET test
data: model2
RESET = 2.0703, df1 = 2, df2 = 2603, p-value = 0.1264
Jarque-Bera Normality Test
data: model2$resid
JB = 81.8075, p-value < 2.2e-16
alternative hypothesis: greater
Wniosek: Wykonane testy dały pozytywne wnioski. Według testu Breuscha Pagana ważona MNK
okazała się skuteczna i pozbyła się zjawiska różnorodności wariancji w modelu. Dowodem na to jest
wartość p-value na poziomie 0,89493, co pozwala zaakceptować hipotezę zerową o
homoskedastyczności składnika losowego. Oba testy na autokorelację mają wysokie poziomy wartości
p-value. Zarówno test Boxa i Pierce’ a jak i test Breuscha Godfrey’ a pokazał, że należy przyjąć
hipotezę zerową o braku autokorelacji składnika losowego( p-value>0,05). Test badający poprawność
funkcyjną modelu, o wartości p-value równej 0,1264 potwierdził owe założenie. Jedynie test Jarque
Informatyka i Ekonometria rok III
Strona 18
Bery, dał wynik, który zmusza do odrzucenia hipotezy zerowej o normalności rozkładu składnika
losowego. Jednak w tym wypadku pozostawiono to w takiej postaci jaka jest.
Prognozy:
Z uwagi na to, że poprzednie dane zostały zmienione podczas likwidacji autokorelacji z modelu
(metodą Cochrane Orcutt), obserwacje pochodzące z 2013 roku, również musza być poddane temu
samemu procesowi. Niezbędną wartością w tym procesie będzie współczynnik rho, który możemy
pozyskać ze środowiska „R”. Był on liczony już wcześniej i wynosi: 0,11873. Dane zmieniane są za
pośrednictwem wzorów1.3.4 i 1.3.5 uwidocznionych wcześniej w sprawozdaniu.
Po poprawnej zmianie postaci danych, wyliczono prognozy. W tym procesie skorzystano z
oszacowanych parametrów, uzyskanych podczas ostatniego procesu estymacji. Oto one:
Oszacowane parametry uzyskane funkcją glm():
a0=3,544893; a1=0,016639; a2=0,007126; a3=0,102592; a4= -0,0027; a5=0,005929.
Zauważono, że wartość parametru a0, który jest wyrazem wolnym, znacząco odbiega od reszty
parametrów. Powoduje to bardzo duże odchylenie wartości teoretycznych, od wartości empirycznych.
W związku z tym zdecydowano się, że wyliczenia prognoz, będzie wykonywane bez wyrazu wolnego.
Wzór, którym się posłużono wygląda następująco:
ln_cena = a1*dzielnica + a2*powierzchnia + a3*liczba pokoi + a4*piętro + a5*rok
Błąd średniokwadratowy jest wartością oczekiwaną, kwadratu błędu, czyli różnicy pomiędzy
estymatorem, a wartością estymowaną. W przypadku naszego projektu wynosi:0,0724
Średni absolutny błąd procentowy(MAPE): 0,0253 – Mylimy się średnio o 2,53% w prognozowanych
wartościach.
Średni błąd prognozy(ME):0,2843 – W tym przypadku wynik jest mały, a co za tym idzie
zadowalający.
Średni absolutny błąd predykcji(MAE):0,2939
Pierwiastek błędu średniokwadratowego(RMSE):0,269029717
Wniosek: Powyższe wyniki są bardzo zadowalające, gdyż wskazują na dobrą jakość prognoz.
Wartość MAPE, a także pozostałych mierników ex post jest bardzo niska, co oznacza, iż wyliczone
przez nas prognozy są bardzo dobre i w niewielkim stopniu mylimy się w prognozowanych
wartościach.
4. WNIOSKI
Informatyka i Ekonometria rok III
Strona 19
Projekt, którego zadaniem było stworzenie modelu ekonometrycznego opisującego zależność
logarytmu ceny mieszkania w Warszawie od różnych czynników takich jak: dzielnica, powierzchnia,
liczba pokoi, piętro oraz rok składał się z wielu procesów. Proces przygotowania danych, które można
wykorzystać w procesie estymacji, był pierwszym etapem, z którym się zmagano. Następnym było
dobranie odpowiedniej metodyki związanej z analizą naszego modelu. Jest to bardzo ważna część
projektu, na której się skupiono, by podjąć odpowiednie decyzje. Źle obrany tor działań, czy wybranie
nieodpowiedniej metody, mogłoby skutkować błędnymi wynikami, które pociągnęły by za sobą
szereg innych błędnie wyliczonych wartości. Po dobraniu metod do analizy modelu, można było
przejść do następnego etapu jakim było modelowanie ekonometryczne. Podczas tej części projektu
użyto wielu testów badających podstawowe zjawiska, często występujące w modelach. Były nimi
przede wszystkim: heteroskedastyczność oraz autokorelacja składnika losowego. W związku z tym, że
nasz model był nimi obarczony, wykorzystano także metody, dzięki którym pozbyto się tych
negatywnych zjawisk.
Wykonane przez nas działania wykazały, że rola wszystkich zmiennych objaśniających w
naszym modelu jest bardzo ważna. Każda z nich w istotny sposób wpływa na kształtowanie się ceny
mieszkania w Warszawie. Głównymi z czynników są dzielnica, a także powierzchnia. Pozostałe takie
jak: piętro, liczba pokoi oraz rok, także determinują wartość ceny mieszkania w Warszawie.
Na koniec wyliczono prognozy. Proces ten nie wymagał dużego nakładu pracy, a w dodatku
dał bardzo pozytywne rezultaty w formie dobrej jakości prognoz i zadowalających wartości
mierników ex post.
Informatyka i Ekonometria rok III
Strona 20

Podobne dokumenty