Daten ueber das Prestige von n=102 "Berufen" aus dem Canadischen Census 1971.

Einzulesen in "R" z.B. mittels:

Prestige <- read.table("Prestige.txt", header=TRUE)
Prestige$type <- as.factor(Prestige$type)
attach(Prestige)


Datenbeschreibung:
==================

Spalte: Variable
0:      row.names(Prestige) (Name der Zeile - Berufsbezeichnung)
1:      education (mittlere Ausbildungszeit in Jahren)
2:      income (mittleres Jahres-Einkommen in CAN$)
3:      women (Frauenanteil in diesem Beruf)
4:      prestige (mittlere Prestige-Berwertung des Berufs)
5:      census (Berufscode)
6:      type ("prof"=leitend/qualifiziert, "wc"=white-collar/Buero, "bc"=blue-collar/Arbeiter)

Die Berufscodes in "census" sind fuer die folgenden Untersuchungen natuerlich 
NICHT zu verwenden!


Aufgabenstellung:
=================

0) Erstelle zuerst Scatterplots, welche den Zusammenhang zwischen der Response 
und jeweils einer der potentiell erklaerenden Variablen darstellt. Probiere 
dafuer auch plot(type, prestige). 
Welche Erkenntnisse koennen daraus jeweils gezogen werden?


1) Finde ein Lineares Regressions Modell, welches das zu erwartende "prestige" 
eines Berufs in Abhaengigkeit von den uebrigen o.a. Variablen erklaert. Betrachte 
dazu die Ergebnisse der t-Tests und die aus "anova()". Wie sind diese Resultate 
jeweils zu interpretieren?

Zur Erinnerung sollte das gefundene Modell einerseits mit den Variablen sehr 
sparsam umgehen, aber andereseits auch einen hohen Grad an Erklaerung aufweisen.

Bemerkung: Bei 4 Berufen fehlt die Information in "type". Diese Situation ist 
durch "NA" kodiert, was fuer "N"ot "A"vailable steht. Wird "type" ins Modell 
genommen, so reduziert sich dadurch der Stichprobenumfang von n=102 auf n=98. 
Falls ihr "type" in das Modell aufnehmt, so empfiehl es sich einen reduzierten 
"data.frame" zu erstellen und damit zu arbeiten, z.B mittels

detach(Prestige)                  # "Prestige" zuerst aus dem Suchpfad nehmen
Prestige.red <- na.omit(Prestige) # neues "Prestige.red" mit vollstaendigen Daten erstellen
attach(Prestige.red)              # und in den Suchpfad aufnehmen


2) Wende diagnostische Verfahren wie Residuenplots ,... an. Welche Berufe werden 
durch das gefundene Modell nicht so gut erklaert. Um einzelne Punkte in einem Plot 
identifizieren zu koennen, erstelle zuerst den "plot" und gib dann den Befehl 
"identify" ein, z.B. in einem Plot x gegen y sollen die Punkte durch deren 
"Zeilennamen" identifiziert sein:

plot(x, y)
identify(x, y, labels=row.names(Prestige.red))

Die Diagonalelemente der Hatmatrix H beschreiben, wie weit der jeweilige erklaernde 
x-Vektor von seiner Mitte entfernt liegt. In "R" berechnet man sich diese Werte durch 

h <- hatvalues(model)
plot(1:n, h)

Finde und identifiziere derartig extreme Datenpunkte.


3) Nur um an Erfahrung zu gewinnen: Probiere das Modell (sowohl mit als auch ohne 
Faktor "type") mit nur den relevanten Haupteffekten auch ohne Intercept zu fitten 
(die rechte Seite der Modellspezifikation mit "-1" erweitern). D.h. betrachte die 
beiden Modelle

lm(prestige ~ income + education + women - 1, data = Prestige)
lm(prestige ~ income + education + women +type - 1, data = Prestige.red)

Hierbei geht es ganz besonders um die Interpretation der Ergebnisse!


4) Eine weitere interessante Erkenntnis: Fitte das Modell mit den standardisierten 
Versionen der erklaerenden Variablen. Transformiere dazu jede Variable 

education.std <- (education-mean(education))/sd(education)
:

und studiere das "summary" von

lm(prestige ~ education.std + income.std + women.std)

Was faellt dabei auf?

