* Encoding: UTF-8. *Analýza generovaných dat. * Data pro tuto analýzu jsou generovaná následujícím skriptem v R. # Obecná procedura pro simulování dat pro regresní modely # Prediktory se vygenerují jako normální korelované proměnné # a pak se jednotlivé proměnné transformují dle portřeby na kategorické. # Závislá se vygeneruje podle modelu + residuum. library(psych) library(car) # Matice prediktorů s nulovými korelacemi n_pred<-4 names_pred<-c("delka","spokojenost","pohlavi","attachment" ) R<-matrix(0,nrow=n_pred, ncol=n_pred, dimnames=list(names_pred,names_pred)) diag(R)<-1 # Specifikace korelací (do spodního trojúhelníku) R["spokojenost","delka"]<-0.4 R["pohlavi","spokojenost"]<-0.2 R["attachment","delka"]<- -0.4 # Zkopírování ze spodního trojúhelníku do horního, aby byla cor matice symetrická R[upper.tri(R)] <- t(R)[upper.tri(R)] # Vygenerování dat odpovídajících korelační matici data <- as.data.frame(sim.correlation(R = R, n = 1000, data = T)) # Transformace proměnných data$delka <- trunc(((data$delka+4)*0.7)^3) data$spokojenost <- trunc(data$spokojenost*10 + 50) data$pohlavi[data$pohlavi < 0] <- -1 data$pohlavi[data$pohlavi >= 0] <- 1 data$pohlavi[data$pohlavi == -1] <- 0 data$attachment<-car::recode(data$attachment, "-10:0.6 = 1 ; 0.600001:1.5 = 2; else = 3") # Výpočet závislé - model data$rozchod<- -0.1*data$delka - 0.1*data$spokojenost - data$pohlavi + 1.5*data$attachment data$rozchod<-data$rozchod+rnorm(1000, sd=1.8) data$rozchod<-car::recode(data$rozchod, "-100:-4 = 0 ; else = 1") #Export write.csv2(data, file="m:\\erasmus.csv") *Case s id=1 má delka = 43, spokojenost=67 ... ********************************************. * Zde začíná program semináře. ********************************************. *Budeme predikovat, kdo se na Erasmu rozejde. *Závislá je rozchod. FREQ rozchod. * Wow, skoro 30 % rozchodů. *Co prediktory?. *Máme: délku vztahu, spokojenost ve vztahu, pohlaví a typ attachmentu. *První dvě jsou spojité, druhé kategorické. *Popisné spojitých. EXAMINE VARIABLES=delka spokojenost /PLOT BOXPLOT HISTOGRAM NPPLOT /COMPARE GROUPS /STATISTICS DESCRIPTIVES EXTREME /CINTERVAL 95 /MISSING LISTWISE /NOTOTAL. *I když je spokojenost generována jako normálně rozložená, podle testů normality není :-) *Délka vztahu je zešikmená zprava. *Popisné kategorických. FREQUENCIES VARIABLES=pohlavi attachment /ORDER=ANALYSIS. *Rozložení ATT celkem reálné. *Podívejme se na vztahy mezi proměnnými. Máme zde mix kategorických a spojitých. *----Omezení osy X na histogramu. EXAMINE VARIABLES=delka spokojenost BY rozchod pohlavi attachment /PLOT BOXPLOT HISTOGRAM NPPLOT /COMPARE GROUPS /STATISTICS DESCRIPTIVES EXTREME /CINTERVAL 95 /MISSING LISTWISE /NOTOTAL. *Rozchod souvisí s oběma. Pohlaví s žádnou. Attachment s délkou vztahu. *Vztahy kategorických. CROSSTABS /TABLES=rozchod BY pohlavi attachment /FORMAT=AVALUE TABLES /STATISTICS=CHISQ PHI /CELLS=COUNT COLUMN ASRESID /COUNT ROUND CELL. *Máme dost dat pro každou kombinaci kategorických?. CTABLES /VLABELS VARIABLES=attachment pohlavi rozchod DISPLAY=BOTH /TABLE attachment > pohlavi BY rozchod [COUNT F40.0] /CATEGORIES VARIABLES=attachment pohlavi rozchod ORDER=A KEY=VALUE EMPTY=INCLUDE /CRITERIA CILEVEL=95. *I při N=1000 je vidět, že pro vyhýbavý styl máme poměrně málo dat. *Hlavní model. LOGISTIC REGRESSION VARIABLES rozchod /METHOD=ENTER delka spokojenost pohlavi attachment /CONTRAST (attachment)=Indicator(1) /CLASSPLOT /CASEWISE OUTLIER(2) /PRINT=CI(95) /CRITERIA=PIN(0.05) POUT(0.10) ITERATE(20) CUT(0.5) /SAVE PRED RESID SRESID. *Interpretujme. *Vedle ručních grafů v Excelu (preferováno), si můžeme nechat vykreslit vztahy mezi prediktorem a predikovanými pravděpodobnostmi. GRAPH /SCATTERPLOT(BIVAR)=delka WITH PRE_1 /MISSING=LISTWISE. GRAPH /SCATTERPLOT(BIVAR)=spokojenost WITH PRE_1 /MISSING=LISTWISE. EXAMINE VARIABLES=PRE_1 BY attachment /PLOT=BOXPLOT /STATISTICS=NONE /NOTOTAL. EXAMINE VARIABLES=PRE_1 BY pohlavi /PLOT=BOXPLOT /STATISTICS=NONE /NOTOTAL. *Grafy reziduí si člověk musí udělat ručně. GRAPH /SCATTERPLOT(BIVAR)=PRE_1 WITH RES_1 /MISSING=LISTWISE. GRAPH /SCATTERPLOT(BIVAR)=PRE_1 WITH SRE_1 /MISSING=LISTWISE. GRAPH /HISTOGRAM=RES_1. GRAPH /HISTOGRAM=SRE_1. *Předpokladem, který si necháváme na konec, je, že spojité prediktory mají lineární vztah s logitem závislé. *Linearita logitu podle Fielda. *Kvůli nulám je tam přičtená jednička. compute delkaLN = ln(delka+1). compute spokLN = ln(spokojenost+1). execute. LOGISTIC REGRESSION VARIABLES rozchod /METHOD=ENTER delka spokojenost delka*delkaLN spokLN*spokojenost /CRITERIA=PIN(.05) POUT(.10) ITERATE(20) CUT(.5). *Linearita logitu ručně. * Visual Binning - kategorizace na 15 intervalů. *delka. RECODE delka (MISSING=COPY) (LO THRU 0=1) (LO THRU 8.4=2) (LO THRU 16.8=3) (LO THRU 25.2=4) (LO THRU 33.6=5) (LO THRU 42=6) (LO THRU 50.4=7) (LO THRU 58.8=8) (LO THRU 67.2=9) (LO THRU 75.6=10) (LO THRU 84=11) (LO THRU 92.4=12) (LO THRU 100.8=13) (LO THRU 109.2=14) (LO THRU 117.6=15) (LO THRU HI=16) (ELSE=SYSMIS) INTO delkaKAT. VARIABLE LABELS delkaKAT 'délka vztahu v měsících (Binned)'. FORMATS delkaKAT (F5.0). VALUE LABELS delkaKAT 1 '<= 0' 2 '1 - 8' 3 '9 - 17' 4 '18 - 25' 5 '26 - 34' 6 '35 - 42' 7 '43 - '+ '50' 8 '51 - 59' 9 '60 - 67' 10 '68 - 76' 11 '77 - 84' 12 '85 - 92' 13 '93 - 101' 14 '102 - '+ '109' 15 '110 - 118' 16 '119+'. VARIABLE LEVEL delkaKAT (ORDINAL). EXECUTE. * Visual Binning - kategorizace opět na 11 intervalů.. *spokojenost. RECODE spokojenost (MISSING=COPY) (LO THRU 10=1) (LO THRU 16.8=2) (LO THRU 23.6=3) (LO THRU 30.4=4) (LO THRU 37.2=5) (LO THRU 44=6) (LO THRU 50.8=7) (LO THRU 57.6=8) (LO THRU 64.4=9) (LO THRU 71.2=10) (LO THRU HI=11) (ELSE=SYSMIS) INTO spokKAT. VARIABLE LABELS spokKAT 'spokojenost ve vztahu (vyšší hodnoty = vyšší spokojenost) (Binned)'. FORMATS spokKAT (F5.0). VALUE LABELS spokKAT 1 '<= 10' 2 '11 - 17' 3 '18 - 24' 4 '25 - 30' 5 '31 - 37' 6 '38 - 44' 7 '45 - 51' 8 '52 - 58' 9 '59 - 64' 10 '65 - 71' 11 '72+'. VARIABLE LEVEL spokKAT (ORDINAL). EXECUTE. MEANS TABLES=rozchod BY delkaKAT /CELLS=MEAN COUNT. MEANS TABLES=rozchod BY spokKAT /CELLS=MEAN COUNT. *Dál v Excelu. Spokojenost zas až tak lineárně nevychází. *S interakcí délky vztahu a typu attachmentu. LOGISTIC REGRESSION VARIABLES rozchod /METHOD=ENTER delka spokojenost pohlavi attachment /METHOD=ENTER delka*attachment /CONTRAST (attachment)=Indicator(1) /SAVE=PRED COOK LEVER RESID SRESID /CLASSPLOT /CASEWISE OUTLIER(2) /PRINT=CI(95) /CRITERIA=PIN(0.05) POUT(0.10) ITERATE(20) CUT(0.5). *Podívejme se i na diagnostická data. *Cookovy vzdálnosti < 1. *Leverage očekáváme kolem (5+1)/1000. EXAMINE VARIABLES=PRE_1 COO_1 LEV_1 /PLOT BOXPLOT HISTOGRAM /COMPARE GROUPS /STATISTICS DESCRIPTIVES EXTREME /CINTERVAL 95 /MISSING LISTWISE /NOTOTAL.