Seite 1 von 1

Lokale Regressionsfunktion: Verteilung mit Quartilen charakterisieren

Verfasst: Fr Jun 16, 2017 11:50 am
von schu
Hallo miteinander,

zwei Dinge vorab: Es handelt sich hierbei um eine Hausaufgabe und es ist nicht eilig.

In einer Teilaufgabe sollen zwei lokale Regressionsfunktionen nach dem Binning-Prinzip berechnet werden. Dabei soll die Verteilung der einen mit dem 1. Quartil und die der anderen mit dem 3. Quartil charakterisiert werden. Die Intervalle werden über die Dezile bestimmt. Ich gebe zu, dass ich nicht den kleinsten Schimmer habe, wie ich R zu verstehen gebe, dass ich mit dem 1. bzw. 3. Quartil charakterisieren will. Eine Charakterisierung mit den bedingten Medianen hat funktioniert und sieht wie folgt aus:

Code: Alles auswählen

# Bins bestimmen
breaks <- quantile(dd$awhour, probs = 0:10/10) 

# Bedingte Mediane berechnen
med <- tapply(dd$income, cut(dd$awhour, breaks), median)

# Einzeichnen
plot(dd$awhour, dd$income,
     xlab = "Jahresarbeitsstunden", ylab = "(Arbeits-)Einkommen")
lines(breaks, c(med, tail(med,1)), "s", col="red", lwd=2)
Mein Lösungsansatz, der leider immer eine Fehlermeldung produziert, ist folgender:

Code: Alles auswählen

# Bins bestimmen
qbreaks <- quantile(dd$awhour, probs=0:10/10)

# Charakterisierung mit 1. Quartil
quart1 <- tapply(dd$income, cut(dd$awhour, qbreaks), quantile( ? , 0.25))
Statt den bedingten Medianen als Charakterisierung steht nun hinten das erste Quartil. Setze ich jedoch eine der beiden Variablen ein, dann erhalte ich folgende Fehlermeldung:

Code: Alles auswählen

Error in match.fun(FUN) : 
  'quantile( X , 0.25)' ist nicht Funktion, Zeichen oder Symbol
Ich bin um jeden Hinweis, Ratschlag, Lösungsansatz, etc. sehr dankbar!

Re: Lokale Regressionsfunktion: Verteilung mit Quartilen charakterisieren

Verfasst: Fr Jun 16, 2017 12:17 pm
von bigben
Hallo schu,

ich muss gestehen, dass ich die Aufgabe nicht ganz verstanden habe.

Vorbehaltlich dessen, kann ich vielleicht mit R Syntax trotzdem helfen:
schu hat geschrieben: Fr Jun 16, 2017 11:50 am

Code: Alles auswählen

# Charakterisierung mit 1. Quartil
quart1 <- tapply(dd$income, cut(dd$awhour, qbreaks), quantile( ? , 0.25))

Versuch mal

Code: Alles auswählen

quart1 <- tapply(dd$income, cut(dd$awhour, qbreaks), function(x) quantile(x, 0.25))
Wenn das unzureichend hilft, erklär bitte nochmal, was Du erreichen willst und gibt ein paar Beispieldaten an.

LG,
Bernhard

Re: Lokale Regressionsfunktion: Verteilung mit Quartilen charakterisieren

Verfasst: Fr Jun 16, 2017 6:23 pm
von schu
Hi Bernhard,

vielen Dank für deine Hilfe. Es hat funktioniert!