*######################################################################### * Autor: Marcel Weschke * E-Mail: marcel.weschke@directbox.de * * Seminar Thema: Regionale Unterschiede in der Mietpreisentwicklung. * Regressionsanalyse - West- / Ostdeutschland - Modell 2 *######################################################################### * Load the zh dataset: *use "K:\Wissenschaftlicher Mitarbeiter\Lehre\Empirisches Seminar\SOEP 50\zhgen.dta", clear use "/home/marcel/Desktop/SOEP-CORE.v37_data/Stata/raw/zhgen.dta", clear * Load and append the beh dataset: *append using "K:\Wissenschaftlicher Mitarbeiter\Lehre\Empirisches Seminar\SOEP 50\behgen.dta" append using "/home/marcel/Desktop/SOEP-CORE.v37_data/Stata/raw/behgen.dta" * ################################ * Pre-code - adjust for inflation: * ################################ * Quelle: https://www-genesis.destatis.de/genesis/online * Verbraucherpreisindex (CPI) für 2009, 2014, 2020 und 2022 gen cpi_2009 = 87.2 / 100 // CPI für 2009 als Bruchteil gen cpi_2014 = 94.0 / 100 // CPI für 2014 als Bruchteil gen cpi_2020 = 100.0 / 100 // CPI für 2020 als Bruchteil -> Basisjahr gen cpi_2022 = 110.2 / 100 // CPI für 2022 als Bruchteil -> Betrachtungsjahr * Inflationsfaktoren zu den Jahren 2009 und 2014 mit Basisjahr 2020 und Betrachtungsjahr 2022: bysort hid (syear): gen inflationsfaktor_2009 = cpi_2022 / cpi_2009 bysort hid (syear): gen inflationsfaktor_2014 = cpi_2022 / cpi_2014 * Setting up the regression variables * #################### * NUMERIC VARIABLES: * #################### * Generate the "miete" variable gen miete = . replace miete = rent09 if syear == 2009 replace miete = rent14 if syear == 2014 * Display the sum of miete values less than or equal to 0 *tab miete if miete <= 50 sum miete if miete <= 0 drop if miete <= 0 * 6897 observations deleted * Next: Nominal price data in Euro converted to real Euro term * Anpassung der Einkommenswerte von 2009 und 2014 auf 2022: bysort hid (syear): replace miete = miete * inflationsfaktor_2009 if syear == 2009 bysort hid (syear): replace miete = miete * inflationsfaktor_2014 if syear == 2014 * Generate the "wohnfläche" variable gen wohnfläche = . replace wohnfläche = size09 if syear == 2009 replace wohnfläche = size14 if syear == 2014 sum wohnfläche if wohnfläche <= 0 *no negative values, good * PLOT: Wohnfläche VS Quadratmeterpreis: graph twoway (scatter Quadratmeterpreis wohnfläche, mfcolor(gray) mlcolor(gray) title("Direktbeziehung zwischen der Wohnfläche und dem Quadratmeterpreis", size(small)) xtitle("Wohnfläche in qm", size(small)) ytitle("Quadratmeterpreis in EUR", size(small))) (lfit Quadratmeterpreis wohnfläche) * Generate the "HH_nettoeinkommen" variable gen HH_nettoeinkommen = . replace HH_nettoeinkommen = hinc09 if syear == 2009 replace HH_nettoeinkommen = hinc14 if syear == 2014 sum HH_nettoeinkommen if HH_nettoeinkommen <= 0 * So there are 292 observations smallerequal to 1 *su HH_nettoeinkommen drop if HH_nettoeinkommen <= 1 * Rescale HH_nettoeinkommen / 1000 to make it better interpretable: replace HH_nettoeinkommen = (HH_nettoeinkommen/1000) * Next: Nominal price data in Euro converted to real Euro term * Anpassung der Einkommenswerte von 2009 und 2014 auf 2022: bysort hid (syear): replace HH_nettoeinkommen = HH_nettoeinkommen * inflationsfaktor_2009 if syear == 2009 bysort hid (syear): replace HH_nettoeinkommen = HH_nettoeinkommen * inflationsfaktor_2014 if syear == 2014 * PLOT: Nettohaushaltseinkommen VS Quadratmeterpreis: graph twoway (scatter Quadratmeterpreis HH_nettoeinkommen, mfcolor(gray) mlcolor(gray) title("Direktbeziehung zwischen dem Nettohaushaltseinkommen und dem Quadratmeterpreis", size(small)) xtitle("Nettohaushaltseinkommen in EUR", size(small)) ytitle("Quadratmeterpreis in EUR", size(small))) (lfit Quadratmeterpreis HH_nettoeinkommen) * Generate the Quadratmeterpreis variable gen Quadratmeterpreis = miete / wohnfläche * Generate the ln(Quadratmeterpreis) variable gen ln_Quadratmeterpreis = log(Quadratmeterpreis) * #################### * FACTOR VARIABLES: * #################### * Generate the "ortschaft" variable, where: * West: ortschaft==1 * Ost: ortschaft==0 gen ortschaft = . replace ortschaft = nuts109_ew if syear == 2009 replace ortschaft = nuts114_ew if syear == 2014 tab ortschaft *Westdeutschland replace ortschaft = 1 if ortschaft == 21 *Ostdeutschland replace ortschaft = 0 if ortschaft == 22 tab ortschaft * 1984 observations in the Ost area * 4804 observations in the West area * Create the "räume" variable gen räume = . replace räume = room09 if syear == 2009 replace räume = room14 if syear == 2014 tab räume *no negative values, good * Create the "mietertyp" variable (to filter out Eigentümer?) gen mietertyp = . replace mietertyp = owner09 if syear == 2009 replace mietertyp = owner14 if syear == 2014 tab mietertyp * Note: "1" would represents Eigentümer.Eigentümer: * drop if mietertyp == 1 * Create the "terasse_balkon" variable gen terasse_balkon = . replace terasse_balkon = eqpter09 if syear == 2009 replace terasse_balkon = eqpter14 if syear == 2014 tab terasse_balkon * So there are 5 observations with -1 drop if terasse_balkon == -1 * value 1: [1] Ja * value 2: [2] Nein * Create the "keller" variable gen keller = . replace keller = eqpbas09 if syear == 2009 replace keller = eqpbas14 if syear == 2014 tab keller * So there are 3 observations with -1 drop if keller == -1 * Create the "garten" variable gen garten = . replace garten = eqpgar09 if syear == 2009 replace garten = eqpgar14 if syear == 2014 tab garten * So there are 6 observations with -1 drop if garten == -1 * Identify households surveyed in both years bysort hid (syear): gen tag = _N tab tag * So there are 4214 unique observations with just 1 year of data drop if tag == 1 * ######################### * Check for missing values: * ######################### sum ln_Quadratmeterpreis Quadratmeterpreis miete wohnfläche HH_nettoeinkommen räume ortschaft terasse_balkon keller garten if missing(ln_Quadratmeterpreis) | missing(Quadratmeterpreis) | missing(miete) | missing(wohnfläche) | missing(HH_nettoeinkommen) | missing(räume) | missing(ortschaft) | missing(terasse_balkon) | missing(keller) | missing(garten) * Remove rows with missing values *drop if missing(ln_Quadratmeterpreis) | missing(Quadratmeterpreis) | missing(miete) | missing(wohnfläche) | missing(HH_nettoeinkommen) | missing(räume) | missing(ortschaft) | missing(terasse_balkon) | missing(keller) | missing(garten) * #################################### * Setting up the panel data structure: * #################################### gen period = 1 if syear == 2009 replace period = 2 if syear == 2014 xtset hid period // deklariere Identifier und Zeitvariable * ############################ * CHECK FOR MOVED household's: * ############################ * Create a new variable moved * Create the dummy variable which indicates whether a household moved and its location (+origion information) or not. *gen move_dummy = . bysort hid (syear): gen region_moved_dummy = 1 if ortschaft[1] != ortschaft[_N] & syear[1] == 2009 & syear[_N] == 2014 * Recode move_dummy based on the specific conditions bysort hid (syear): replace region_moved_dummy = 0 if ortschaft[1] == ortschaft[_N] bysort hid (syear): replace region_moved_dummy = 1 if ortschaft[1] == 0 & ortschaft[_N] == 1 bysort hid (syear): replace region_moved_dummy = 2 if ortschaft[1] == 1 & ortschaft[_N] == 0 bysort hid (syear): replace region_moved_dummy = 3 if ortschaft[1] == 0 & ortschaft[_N] == 0 tab region_moved_dummy *gen diff_move_dummy = d.move_dummy *Ziel dieser zusätzlichen Variable: -> Aussage über die Änderung durch Ausgangsmiete, wie im Paper. bysort hid (syear): gen apartment_moved_dummy = 0 if wohnfläche[1] == wohnfläche[_N] & syear[1] == 2009 & syear[_N] == 2014 bysort hid (syear): replace apartment_moved_dummy = 1 if wohnfläche[1] != wohnfläche[_N] & syear[1] == 2009 & syear[_N] == 2014 tab apartment_moved_dummy * 1242 sind in ihrer Wohnung geblieben * 1318 sind umgezogen im laufe der Zeit * REMINDER: ! ************************************************** * Variable: ortschaft * 0: Ostdeutschland * 1: Westdeutschland * Variable: region_moved_dummy * 0: in West-Region geblieben * 1: West zu Ost gezogen * 2: Ost zu West gezogen * 3: in Ost-Region geblieben * Variable: apartment_moved_dummy * 0: Wöhnungsgröße hat sich nicht verändert * 1: Wohnungsgröße hat sich verändert ************************************************** * ############################ * Generating diff_Variable's : * ############################ bysort hid (syear): gen diff_ortschaft = ortschaft - ortschaft[_n-1] bysort hid (syear): replace diff_ortschaft = 2 if diff_ortschaft == -1 graph bar (count), over(diff_ortschaft) bysort hid (syear): gen diff_räume = räume - räume[_n-1] *gen diff_räume = räume - räume[_n-1] graph bar (count), over(diff_räume) * Erklärung der Werte: * 0 Nullwert: * Dies würde bedeuten, dass die Anzahl der Räume im Haushalt zwischen 2009 und 2014 unverändert geblieben ist. * 1,... Positive Werte: * Dies würde bedeuten, dass die Anzahl der Räume im Haushalt im Jahr 2014 im Vergleich zu 2009 zugenommen hat. * -1,... Negativer Werte: * Dies würde bedeuten, dass die Anzahl der Räume im Haushalt im Jahr 2014 im Vergleich zu 2009 abgenommen hat. -> Wobei ich diesen Wert zu "2" umkodiere, da keine negativen Werte erlaubt sind !! * Plot Ortschaft-Verteilung (Land und Stadt) graph bar, over(räume) over(ortschaft, relabel(1 "Land" 2 "Stadt")) /// title("Anzahl der Räume je Wohneinheit und Ortschaft:", size(small)) /// ytitle("Prozent der Wohneinheiten", size(small)) /// bar(1, color(gray) fcolor(gray)) * Plot Ortschaft-Verteilung (Land und Stadt) graph bar, over(diff_räume) over(ortschaft, relabel(1 "Land" 2 "Stadt")) /// title("{&Delta} Anzahl der Räume je Wohneinheit und Ortschaft:", size(small)) /// ytitle("Prozent der Wohneinheiten", size(small)) /// bar(1, color(gray) fcolor(gray)) bysort hid (syear): gen diff_terasse_balkon = terasse_balkon - terasse_balkon[_n-1] bysort hid (syear): replace diff_terasse_balkon = 2 if diff_terasse_balkon == -1 *gen diff_terasse_balkon = terasse_balkon - terasse_balkon[_n-1] *graph bar (count), over(diff_terasse_balkon) graph bar, over(diff_terasse_balkon ) over(ortschaft, relabel(1 "Land" 2 "Stadt")) /// title("Änderung nach Umzug, Terasse/Balkon je Wohneinheit und Ortschaft:", size(small)) /// ytitle("Prozent der Wohneinheiten", size(small)) /// bar(1, color(gray) fcolor(gray)) * Erklärung der Werte: * 0 Nullwert: * Dies würde bedeuten, dass "terasse_balkon" im Haushalt zwischen 2009 und 2014 unverändert geblieben ist. * 1 Positive Werte: * Dies würde bedeuten, dass "terasse_balkon" im Haushalt im Jahr 2014 im Vergleich zu 2009 zugenommen hat. (neue Wohnung MIT Terasse/Balkon) * -1 Negativer Werte: * Dies würde bedeuten, dass die Anzahl der Räume im Haushalt im Jahr 2014 im Vergleich zu 2009 abgenommen hat. (neue Wohnung OHNE Terasse/Balkon) -> Wobei ich diesen Wert zu "2" umkodiere, da keine negativen Werte erlaubt sind !! bysort hid (syear): gen diff_keller = keller - keller[_n-1] bysort hid (syear): replace diff_keller = 2 if diff_keller == -1 *gen diff_keller = keller - keller[_n-1] *graph bar (count), over(diff_keller) bysort hid (syear): gen diff_garten = garten - garten[_n-1] bysort hid (syear): replace diff_garten = 2 if diff_garten == -1 *gen diff_garten = garten - garten[_n-1] *graph bar (count), over(diff_garten) bysort hid (syear): gen diff_HH_nettoeinkommen = 0 if HH_nettoeinkommen[1] == HH_nettoeinkommen[_N] & syear[1] == 2009 & syear[_N] == 2014 bysort hid (syear): replace diff_HH_nettoeinkommen = 1 if HH_nettoeinkommen[1] != HH_nettoeinkommen[_N] & syear[1] == 2009 & syear[_N] == 2014 tab diff_HH_nettoeinkommen * Before "Inflationsanpassung": * 118 households had no change in the netto_household_income over time. * 2442 households had a change in the netto_household_income over time. *Question? / Reminder: * ALLE Haushalte hatten eine monatliche Nettohaushaltseinkommen-Änderung zwischen 2009 und 2014 ! * Is this based on my "Inflationsanpassung"? bysort hid (syear): gen diff_Quadratmeterpreis = Quadratmeterpreis - Quadratmeterpreis[_n-1] *gen diff_Quadratmeterpreis = Quadratmeterpreis - Quadratmeterpreis[_n-1] sum diff_Quadratmeterpreis if diff_Quadratmeterpreis <= 0 * 905 had 0 or even a negative change in qmp since 2009 sum diff_Quadratmeterpreis if diff_Quadratmeterpreis > 0 * 375 had an increase in qmp since 2009 * Generate the absolute value of the difference -> Brauche ich nicht, da schon gleich diff_ln_Quadratmeterpreis gen log_diff_QMP = log(diff_Quadratmeterpreis) bysort hid (syear): gen diff_ln_Quadratmeterpreis = ln_Quadratmeterpreis - ln_Quadratmeterpreis[_n-1] *tab diff_Quadratmeterpreis *graph bar (count), over(diff_Quadratmeterpreis, label(labsize(vsmall))) scale(*.6) * xlabel(#10) * We can see, that more people did change to a higher Quadratmeterpreis * Generiere Kategoriale Variable * * 0 = nicht umgezogen im Osten * 1 = nicht umgezogen im Westen * 2 = umgezogen innerhalb Osten * 3 = umgezogen innerhalb Westen * 4 = umgezogen von Westen nach Osten * 5 = umgezogen von Osten nach Westen * gen umzug_cat = . bysort hid (syear): replace umzug_cat = 0 if apartment_moved_dummy == 0 & ortschaft == 0 & ortschaft[_n-1] == 0 bysort hid (syear): replace umzug_cat = 1 if apartment_moved_dummy == 0 & ortschaft == 1 & ortschaft[_n-1] == 1 bysort hid (syear): replace umzug_cat = 2 if apartment_moved_dummy == 1 & ortschaft == 0 & ortschaft[_n-1] == 0 bysort hid (syear): replace umzug_cat = 3 if apartment_moved_dummy == 1 & ortschaft == 1 & ortschaft[_n-1] == 1 bysort hid (syear): replace umzug_cat = 4 if apartment_moved_dummy == 1 & ortschaft == 1 & ortschaft[_n-1] == 0 bysort hid (syear): replace umzug_cat = 5 if apartment_moved_dummy == 1 & ortschaft == 0 & ortschaft[_n-1] == 1 * ################################## * remove all other/unused variables: * ################################## keep hid syear miete wohnfläche HH_nettoeinkommen Quadratmeterpreis ln_Quadratmeterpreis ortschaft räume mietertyp terasse_balkon keller garten tag period region_moved_dummy apartment_moved_dummy diff_ortschaft diff_räume diff_terasse_balkon diff_keller diff_garten diff_HH_nettoeinkommen diff_Quadratmeterpreis log_diff_QMP diff_ln_Quadratmeterpreis umzug_cat ******** FINALE AUSWERTUNG - MARCEL ******** * ## * ######################## * Model 2: West/Ost MLR: Regressionsgleichung 1) * ######################## * ## regress ln_Quadratmeterpreis i.umzug_cat i.räume i.umzug_cat#i.diff_terasse_balkon i.umzug_cat#i.diff_keller i.umzug_cat#i.diff_garten diff_räume HH_nettoeinkommen wohnfläche, robust estat ic *------------------------------------------------------------------------------------------------------------------- * Model | N log likelihood (full model) df R2 AIC BIC RMSE *-------------+----------------------------------------------------------------------------------------------------- * QMP_SL *[Lin-Lin] | 1,279 -3018.99 47 0.1775 6131.98 6374.21 2.6154 *------------------------------------------------------------------------------------------------------------------- * ln(QMP)_SL *[Log-Lin] | 1,279 -641.722 47 0.1476 1377.444 1619.674 0.40768 *------------------------------------------------------------------------------------------------------------------- * * -> Based on these results, we prefere the Log-Lin Model !!! Better values ! outreg2 using ~/Desktop/outreg2_StadtLandWestOst.tex, tex append ctitle(ln(QMP) West/Ost) * ## * ######################## * Model 2: West/Ost MLR: Regressionsgleichung 2) * ######################## * ## regress diff_ln_Quadratmeterpreis i.umzug_cat i.räume i.umzug_cat#i.diff_terasse_balkon i.umzug_cat#i.diff_keller i.umzug_cat#i.diff_garten diff_räume HH_nettoeinkommen wohnfläche, robust outreg2 using ~/Desktop/outreg2_StadtLandWestOst.tex, tex append ctitle(diff_ln(QMP) Ost/West) *Oder mit Stefan's Variable - Ich denke aber ist doppelt log, also nein regress log_diff_QMP i.räume i.umzug_cat i.umzug_cat#i.terasse_balkon i.umzug_cat#i.keller i.umzug_cat#i.garten i.umzug_cat#i.diff_terasse_balkon i.umzug_cat#i.diff_keller i.umzug_cat#i.diff_garten HH_nettoeinkommen wohnfläche, robust * Results - COEFPLOT: coefplot, drop(_cons) mcolor(black) msize(0.5) xline(0) mlabposition(6) mlabsize(vsmall) mlabgap(-1.8) mlabformat("%5.3f") mlabcolor(red) ciopts(color(navy)) /// mlabel(cond(@pval<0.01, "***", /// cond(@pval<0.05, "**", /// cond(@pval<0.10, "*", "")))) /// ylabel(,labsize(1.4)) xlabel(,labsize(2)) /// ysize(12) /// xsize(8) /// headings(2.räume = "{bf:Anzahl der Räume}" /// 1.umzug_cat = "{bf:Kategorie: Umzug}" /// 1.umzug_cat#2.terasse_balkon = "{bf:Kategorie: Umzug#Ausstattung}" /// 1.umzug_cat#1.diff_terasse_balkon = "{bf:Kategorie: {&Delta}-Ausstattung - Umzug#Terasse/Balkon}" /// 1.umzug_cat#1.diff_keller = "{bf:Kategorie: {&Delta}-Ausstattung - Umzug#Keller}" /// 1.umzug_cat#1.diff_garten = "{bf:Kategorie: {&Delta}-Ausstattung - Umzug#Garten}" /// 0.umzug_cat = "{bf:Kategorie: Umzug}" /// diff_räume = "{bf: Weitere}",labsize(1.5)) /// coeflabels(2.räume = "2 Zimmer Wohnung" /// 3.räume = "3 Zimmer Wohnung" /// 4.räume = "4 Zimmer Wohnung" /// 5.räume = "5 Zimmer Wohnung" /// 6.räume = "6 Zimmer Wohnung" /// 7.räume = "7 Zimmer Wohnung" /// 8.räume = "8 Zimmer Wohnung" /// 9.räume = "9 Zimmer Wohnung" /// 11.räume = "11 Zimmer Wohnung" /// 0.umzug_cat = "Nicht umgezogen im Osten" /// 1.umzug_cat = "Nicht umgezogen im Westen" /// 2.umzug_cat = "Umgezogen innerhalb Osten" /// 3.umzug_cat = "Umgezogen innerhalb Westen" /// 4.umzug_cat = "Umgezogen von Westen nach Osten" /// 5.umzug_cat = "Umgezogen von Osten nach Westen" /// 0.umzug_cat#1.räume = "Osten: Nicht umgezogen - 1 Zimmer Wohnung" /// 0.umzug_cat#2.räume = "Osten: Nicht umgezogen - 2 Zimmer Wohnung" /// 0.umzug_cat#3.räume = "Osten: Nicht umgezogen - 3 Zimmer Wohnung" /// 0.umzug_cat#4.räume = "Osten: Nicht umgezogen - 4 Zimmer Wohnung" /// 0.umzug_cat#5.räume = "Osten: Nicht umgezogen - 5 Zimmer Wohnung" /// 0.umzug_cat#6.räume = "Osten: Nicht umgezogen - 6 Zimmer Wohnung" /// 0.umzug_cat#7.räume = "Osten: Nicht umgezogen - 7 Zimmer Wohnung" /// 0.umzug_cat#8.räume = "Osten: Nicht umgezogen - 8 Zimmer Wohnung" /// 0.umzug_cat#9.räume = "Osten: Nicht umgezogen - 9 Zimmer Wohnung" /// 0.umzug_cat#11.räume = "Osten: Nicht umgezogen - 11 Zimmer Wohnung" /// 1.umzug_cat#1.räume = "Westen: Nicht umgezogen - 1 Zimmer Wohnung" /// 1.umzug_cat#2.räume = "Westen: Nicht umgezogen - 2 Zimmer Wohnung" /// 1.umzug_cat#3.räume = "Westen: Nicht umgezogen - 3 Zimmer Wohnung" /// 1.umzug_cat#4.räume = "Westen: Nicht umgezogen - 4 Zimmer Wohnung" /// 1.umzug_cat#5.räume = "Westen: Nicht umgezogen - 5 Zimmer Wohnung" /// 1.umzug_cat#6.räume = "Westen: Nicht umgezogen - 6 Zimmer Wohnung" /// 1.umzug_cat#7.räume = "Westen: Nicht umgezogen - 7 Zimmer Wohnung" /// 1.umzug_cat#8.räume = "Westen: Nicht umgezogen - 8 Zimmer Wohnung" /// 1.umzug_cat#9.räume = "Westen: Nicht umgezogen - 9 Zimmer Wohnung" /// 1.umzug_cat#11.räume = "Westen: Nicht umgezogen - 11 Zimmer Wohnung" /// 2.umzug_cat#1.räume = "Osten: innerhalb umgezogen - 1 Zimmer Wohnung" /// 2.umzug_cat#2.räume = "Osten: innerhalb umgezogen - 2 Zimmer Wohnung" /// 2.umzug_cat#3.räume = "Osten: innerhalb umgezogen - 3 Zimmer Wohnung" /// 2.umzug_cat#4.räume = "Osten: innerhalb umgezogen - 4 Zimmer Wohnung" /// 2.umzug_cat#5.räume = "Osten: innerhalb umgezogen - 5 Zimmer Wohnung" /// 2.umzug_cat#6.räume = "Osten: innerhalb umgezogen - 6 Zimmer Wohnung" /// 2.umzug_cat#7.räume = "Osten: innerhalb umgezogen - 7 Zimmer Wohnung" /// 2.umzug_cat#8.räume = "Osten: innerhalb umgezogen - 8 Zimmer Wohnung" /// 2.umzug_cat#9.räume = "Osten: innerhalb umgezogen - 9 Zimmer Wohnung" /// 2.umzug_cat#11.räume = "Osten: innerhalb umgezogen - 11 Zimmer Wohnung" /// 3.umzug_cat#1.räume = "Westen: innerhalb umgezogen - 1 Zimmer Wohnung" /// 3.umzug_cat#2.räume = "Westen: innerhalb umgezogen - 2 Zimmer Wohnung" /// 3.umzug_cat#3.räume = "Westen: innerhalb umgezogen - 3 Zimmer Wohnung" /// 3.umzug_cat#4.räume = "Westen: innerhalb umgezogen - 4 Zimmer Wohnung" /// 3.umzug_cat#9.räume = "Westen: innerhalb umgezogen - 9 Zimmer Wohnung" /// 3.umzug_cat#11.räume = "Westen: innerhalb umgezogen - 11 Zimmer Wohnung" /// 4.umzug_cat#1.räume = "Von Westen nach Osten gezogen - 1 Zimmer Wohnung" /// 4.umzug_cat#2.räume = "Von Westen nach Osten gezogen - 2 Zimmer Wohnung" /// 4.umzug_cat#3.räume = "Von Westen nach Osten gezogen - 3 Zimmer Wohnung" /// 4.umzug_cat#4.räume = "Von Westen nach Osten gezogen - 4 Zimmer Wohnung" /// 4.umzug_cat#5.räume = "Von Westen nach Osten gezogen - 5 Zimmer Wohnung" /// 4.umzug_cat#6.räume = "Von Westen nach Osten gezogen - 6 Zimmer Wohnung" /// 4.umzug_cat#7.räume = "Von Westen nach Osten gezogen - 7 Zimmer Wohnung" /// 4.umzug_cat#8.räume = "Von Westen nach Osten gezogen - 8 Zimmer Wohnung" /// 4.umzug_cat#9.räume = "Von Westen nach Osten gezogen - 9 Zimmer Wohnung" /// 4.umzug_cat#11.räume = "Von Westen nach Osten gezogen - 11 Zimmer Wohnung" /// 5.umzug_cat#1.räume = "Vom Osten in die Westen gezogen - 1 Zimmer Wohnung" /// 5.umzug_cat#2.räume = "Vom Osten in die Westen gezogen - 2 Zimmer Wohnung" /// 5.umzug_cat#3.räume = "Vom Osten in die Westen gezogen - 3 Zimmer Wohnung" /// 5.umzug_cat#4.räume = "Vom Osten in die Westen gezogen - 4 Zimmer Wohnung" /// 5.umzug_cat#5.räume = "Vom Osten in die Westen gezogen - 5 Zimmer Wohnung" /// 5.umzug_cat#6.räume = "Vom Osten in die Westen gezogen - 6 Zimmer Wohnung" /// 5.umzug_cat#7.räume = "Vom Osten in die Westen gezogen - 7 Zimmer Wohnung" /// 5.umzug_cat#8.räume = "Vom Osten in die Westen gezogen - 8 Zimmer Wohnung" /// 5.umzug_cat#9.räume = "Vom Osten in die Westen gezogen - 9 Zimmer Wohnung" /// 5.umzug_cat#11.räume = "Vom Osten in die Westen gezogen - 11 Zimmer Wohnung" /// 0.umzug_cat#1.terasse_balkon = "Osten: Nicht umgezogen - mit Terasse/Balkon" /// 0.umzug_cat#2.terasse_balkon = "Osten: Nicht umgezogen - ohne Terasse/Balkon" /// 1.umzug_cat#1.terasse_balkon = "Westen: Nicht umgezogen - mit Terasse/Balkon" /// 1.umzug_cat#2.terasse_balkon = "Westen: Nicht umgezogen - ohne Terasse/Balkon" /// 2.umzug_cat#1.terasse_balkon = "Osten: innerhalb umgezogen - mit Terasse/Balkon" /// 2.umzug_cat#2.terasse_balkon = "Osten: innerhalb umgezogen - ohne Terasse/Balkon" /// 3.umzug_cat#1.terasse_balkon = "Westen: innerhalb umgezogen - mit Terasse/Balkon" /// 3.umzug_cat#2.terasse_balkon = "Westen: innerhalb umgezogen - ohne Terasse/Balkon" /// 4.umzug_cat#1.terasse_balkon = "Von Westen nach Osten gezogen - mit Terasse/Balkon" /// 4.umzug_cat#2.terasse_balkon = "Von Westen nach Osten gezogen - ohne Terasse/Balkon" /// 5.umzug_cat#1.terasse_balkon = "Vom Osten in die Westen gezogen - mit Terasse/Balkon" /// 5.umzug_cat#2.terasse_balkon = "Vom Osten in die Westen gezogen - ohne Terasse/Balkon" /// 0.umzug_cat#1.keller = "Osten: Nicht umgezogen - mit Keller" /// 0.umzug_cat#2.keller = "Osten: Nicht umgezogen - ohne Keller" /// 1.umzug_cat#1.keller = "Westen: Nicht umgezogen - mit Keller" /// 1.umzug_cat#2.keller = "Westen: Nicht umgezogen - ohne Keller" /// 2.umzug_cat#1.keller = "Osten: innerhalb umgezogen - mit Keller" /// 2.umzug_cat#2.keller = "Osten: innerhalb umgezogen - ohne Keller" /// 3.umzug_cat#1.keller = "Westen: innerhalb umgezogen - mit Keller" /// 3.umzug_cat#2.keller = "Westen: innerhalb umgezogen - ohne Keller" /// 4.umzug_cat#1.keller = "Von Westen nach Osten gezogen - mit Keller" /// 4.umzug_cat#2.keller = "Von Westen nach Osten gezogen - ohne Keller" /// 5.umzug_cat#1.keller = "Vom Osten in die Westen gezogen - mit Keller" /// 5.umzug_cat#2.keller = "Vom Osten in die Westen gezogen - ohne Keller" /// 0.umzug_cat#1.garten = "Osten: Nicht umgezogen - mit Garten" /// 0.umzug_cat#2.garten = "Osten: Nicht umgezogen - ohne Garten" /// 1.umzug_cat#1.garten = "Westen: Nicht umgezogen - mit Garten" /// 1.umzug_cat#2.garten = "Westen: Nicht umgezogen - ohne Garten" /// 2.umzug_cat#1.garten = "Osten: innerhalb umgezogen - mit Garten" /// 2.umzug_cat#2.garten = "Osten: innerhalb umgezogen - ohne Garten" /// 3.umzug_cat#1.garten = "Westen: innerhalb umgezogen - mit Garten" /// 3.umzug_cat#2.garten = "Westen: innerhalb umgezogen - ohne Garten" /// 4.umzug_cat#1.garten = "Von Westen nach Osten gezogen - mit Garten" /// 4.umzug_cat#2.garten = "Von Westen nach Osten gezogen - ohne Garten" /// 5.umzug_cat#1.garten = "Vom Osten in die Westen gezogen - mit Garten" /// 5.umzug_cat#2.garten = "Vom Osten in die Westen gezogen - ohne Garten" /// 1.umzug_cat#1.diff_terasse_balkon = "Westen: Nicht umgezogen - neu mit Terasse/Balkon" /// 1.umzug_cat#2.diff_terasse_balkon = "Westen: Nicht umgezogen - neu ohne Terasse/Balkon" /// 2.umzug_cat#1.diff_terasse_balkon = "Osten: innerhalb umgezogen - neu mit Terasse/Balkon" /// 2.umzug_cat#2.diff_terasse_balkon = "Osten: innerhalb umgezogen - neu ohne Terasse/Balkon" /// 3.umzug_cat#1.diff_terasse_balkon = "Westen: innerhalb umgezogen - neu mit Terasse/Balkon" /// 3.umzug_cat#2.diff_terasse_balkon = "Westen: innerhalb umgezogen - neu ohne Terasse/Balkon" /// 4.umzug_cat#1.diff_terasse_balkon = "Von Westen nach Osten gezogen - neu mit Terasse/Balkon" /// 4.umzug_cat#2.diff_terasse_balkon = "Von Westen nach Osten gezogen - neu ohne Terasse/Balkon" /// 5.umzug_cat#1.diff_terasse_balkon = "Vom Osten in die Westen gezogen - neu mit Terasse/Balkon" /// 5.umzug_cat#2.diff_terasse_balkon = "Vom Osten in die Westen gezogen - neu ohne Terasse/Balkon" /// 1.umzug_cat#1.diff_keller = "Westen: Nicht umgezogen - neu mit Keller" /// 1.umzug_cat#2.diff_keller = "Westen: Nicht umgezogen - neu ohne Keller" /// 2.umzug_cat#1.diff_keller = "Osten: innerhalb umgezogen - neu mit Keller" /// 2.umzug_cat#2.diff_keller = "Osten: innerhalb umgezogen - neu ohne Keller" /// 3.umzug_cat#1.diff_keller = "Westen: innerhalb umgezogen - neu mit Keller" /// 3.umzug_cat#2.diff_keller = "Westen: innerhalb umgezogen - neu ohne Keller" /// 4.umzug_cat#1.diff_keller = "Von Westen nach Osten gezogen - neu mit Keller" /// 4.umzug_cat#2.diff_keller = "Von Westen nach Osten gezogen - neu ohne Keller" /// 5.umzug_cat#1.diff_keller = "Vom Osten in die Westen gezogen - neu mit Keller" /// 5.umzug_cat#2.diff_keller = "Vom Osten in die Westen gezogen - neu ohne Keller" /// 1.umzug_cat#1.diff_garten = "Westen: Nicht umgezogen - neu mit Garten" /// 1.umzug_cat#2.diff_garten = "Westen: Nicht umgezogen - neu ohne Garten" /// 2.umzug_cat#1.diff_garten = "Osten: innerhalb umgezogen - neu mit Garten" /// 2.umzug_cat#2.diff_garten = "Osten: innerhalb umgezogen - neu ohne Garten" /// 3.umzug_cat#1.diff_garten = "Westen: innerhalb umgezogen - neu mit Garten" /// 3.umzug_cat#2.diff_garten = "Westen: innerhalb umgezogen - neu ohne Garten" /// 4.umzug_cat#1.diff_garten = "Von Westen nach Osten gezogen - neu mit Garten" /// 4.umzug_cat#2.diff_garten = "Von Westen nach Osten gezogen - neu ohne Garten" /// 5.umzug_cat#1.diff_garten = "Vom Osten in die Westen gezogen - neu mit Garten" /// 5.umzug_cat#2.diff_garten = "Vom Osten in die Westen gezogen - neu ohne Garten" /// diff_räume = "{&Delta} Anzahl der Räume" /// diff_terasse_balkon = "{&Delta} Terasse/Balkon" /// diff_keller = "{&Delta} Keller" /// diff_garten = "{&Delta} Garten" /// HH_nettoeinkommen = "Nettohaushaltseinkommen" /// wohnfläche = "Wohnfläche") * mlabel(cond(@pval<.001, "***", /// * cond(@pval<.01, "**", /// * cond(@pval<.05, "*", "")))) /// * If I want to see the omitted factor levels: *omitted baselevels ******************* DESCRIPTIVE STATISTICS TABLE !!! ***************************** summarize Quadratmeterpreis miete wohnfläche i.ortschaft i.räume i.terasse_balkon i.keller i.garten HH_nettoeinkommen ********************************************************************************** asdoc sum Quadratmeterpreis miete wohnfläche ortschaft räume terasse_balkon keller garten HH_nettoeinkommen, stat(N mean sd min p25 p75 max) replace *Tables of factor variables: tab1 ortschaft räume terasse_balkon keller garten *** PLOT Corr: graph matrix ln_Quadratmeterpreis miete wohnfläche ortschaft räume terasse_balkon keller garten HH_nettoeinkommen, half xla(, ang(90)) plotregion(margin(medium)) * OR in numbers!!!!: pwcorr ln_Quadratmeterpreis miete wohnfläche ortschaft räume terasse_balkon keller garten HH_nettoeinkommen, sig su * ##### * Note: Mein Panel Datensatz besitzt nun 1280 verschiedene Haushalte (bei zwei Jahren also: n=2560) * ##### * Save the resulting dataset * save "/home/marcel/Desktop/West_Ost_panneldata.dta", replace ****************************** EXTRA NOTES AND TEST - for curiosity: *********** ******************************************************************************** * Perform pairwise comparisons with Tukey correction *pwcompare ln_Quadratmeterpreis, by(räume) mcompare(tukey) *corr-plot: graph matrix ln_Quadratmeterpreis Quadratmeterpreis wohnfläche HH_nettoeinkommen ortschaft move_dummy räume terasse_balkon keller garten, half xla(, ang(90)) plotregion(margin(medium)) *corr-output: pwcorr ln_Quadratmeterpreis Quadratmeterpreis wohnfläche HH_nettoeinkommen ortschaft move_dummy räume terasse_balkon keller garten, sig *VIF: estat vif ************ ************ * Ansatz: Termin - Absprachen mit Stefan: ************ *Regressionsgleichung 1.1) regress diff_Quadratmeterpreis i.ortschaft i.apartment_moved_dummy diff_räume diff_terasse_balkon diff_keller diff_garten HH_nettoeinkommen wohnfläche, robust *Regressionsgleichung 1.2) regress log_diff_QMP i.ortschaft i.apartment_moved_dummy diff_räume i.diff_terasse_balkon i.diff_keller i.diff_garten HH_nettoeinkommen wohnfläche, robust ************ *log the results to a text file *log using "/home/marcel/Desktop/ln_Quadratmeterpreis_OW_Modell.txt", text replace *so the output just keeps going *set more off