glm() Funktion - Koeffizienten zuweisen

Modelle zur Korrelations- und Regressionsanalyse

Moderator: EDi

Antworten
kevin

glm() Funktion - Koeffizienten zuweisen

Beitrag von kevin »

Hallo R´ler,

ist es möglich für ein Modell zur Vorhersage mit glm(), meinen Variablen (abhängige und unabhängige Variablen) bestimmte Koeffizienten zuteilen, damit sie nicht eigene berechnet sondern die vorgegebenen verwendet?

Würde mich sehr über eine Antwort freuen.

Gruß
Zuletzt geändert von kevin am Fr Sep 01, 2017 9:01 am, insgesamt 2-mal geändert.
Benutzeravatar
EDi
Beiträge: 1599
Registriert: Sa Okt 08, 2016 3:39 pm

Re: glm() Funktion - Koeffizienten zuweisen

Beitrag von EDi »

bestimmte Koeffizienten zuteilen, damit sie nicht eigene berechnet sondern die vorgegebenen verwendet?
Das geht mit offset()... :geek:

Wenn ich aber
die Variable Eigentuemer und Bodenart will die glm() Funktion nicht akzeptieren. Die Spalte Eigentuemer hat für alle 430 vorhandenen Zeilen das Wort "Privat" enthalten und Bodenart über alle "Tonschluffe".
lese,

würde ich dir anraten zuerstmal das Model das du das fittest auf ein Blatt Papier zu schreiben (und zwar in mathematischer Notation).

Wenn du das hast, weißt du a) die Antwort auf deine Frage und
b) was offset macht.
Bitte immer ein reproduzierbares Minimalbeispiel angeben. Meinungen gehören mir und geben nicht die meines Brötchengebers wieder.

Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
Bild.
kevin

Re: glm() Funktion - Koeffizienten zuweisen

Beitrag von kevin »

Leider stehe ich ziemlich auf dem Schlauch, bzw bin ich einfach noch zu sehr Neuling auf dem Gebiet.
wie kann ich mittles offset() meinem Modell zu verstehen geben, dass er jetzt beispielsweise für die Dosis den vorgegebenen Koeffizienten verwenden soll? Erstelle ich da am besten einen Vektor mit meinen Variablen wo ich die Koeffizienten hinterlege?
Zuletzt geändert von kevin am Fr Sep 01, 2017 9:00 am, insgesamt 4-mal geändert.
Benutzeravatar
EDi
Beiträge: 1599
Registriert: Sa Okt 08, 2016 3:39 pm

Re: glm() Funktion - Koeffizienten zuweisen

Beitrag von EDi »

Siehe ?formula.

Also

Code: Alles auswählen

y~x+offset(z)
wobei z den coeffizient 1 hat. Will du was anderea musst du entsprechend multiplizieren.
Bitte immer ein reproduzierbares Minimalbeispiel angeben. Meinungen gehören mir und geben nicht die meines Brötchengebers wieder.

Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
Bild.
Benutzeravatar
EDi
Beiträge: 1599
Registriert: Sa Okt 08, 2016 3:39 pm

Re: glm() Funktion - Koeffizienten zuweisen

Beitrag von EDi »

Hier noch ein reproduzierbares Beispiel:

Code: Alles auswählen

# Simulate some data ------------------------------------------------------

set.seed(1234)
n <- 100
x <- rnorm(n)
z <- rnorm(n)

# linear predictor
nu <- -10*x + 10*z
# on logit scale
mu <-  1 / (1 + exp(-nu)) 
y <- rbinom(n = n, size = 1, prob = mu)
df <- data.frame(x, y, z)



# Fit models --------------------------------------------------------------

# coef * z
mod <- glm(y ~ x + z, family = binomial(link = 'logit'), data = df)
summary(mod)

# 1 * z
mod1 <- glm(y ~ x + offset(z), family = binomial(link = 'logit'), data = df)
summary(mod1)

# = coef * z, but using the offset
mod2 <- glm(y ~ x + offset(coef(mod)[3] * z), family = binomial(link = 'logit'), data = df)
summary(mod2)
# = same as mod
coef(mod2)[2] - coef(mod)[2]
Bitte immer ein reproduzierbares Minimalbeispiel angeben. Meinungen gehören mir und geben nicht die meines Brötchengebers wieder.

Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
Bild.
kevin

Re: glm() Funktion - Koeffizienten zuweisen

Beitrag von kevin »

Hallo EDi,

vielen Dank für dein Beispiel.


Gruß
Zuletzt geändert von kevin am Fr Sep 01, 2017 8:58 am, insgesamt 1-mal geändert.
Benutzeravatar
EDi
Beiträge: 1599
Registriert: Sa Okt 08, 2016 3:39 pm

Re: glm() Funktion - Koeffizienten zuweisen

Beitrag von EDi »

Probier mal die Faktoren dummy-codieren und dann hinzufügen (Eine Ausprägung geht aber in den intercept, außer parametrisierst das Model ohne Intercept).
Bitte immer ein reproduzierbares Minimalbeispiel angeben. Meinungen gehören mir und geben nicht die meines Brötchengebers wieder.

Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
Bild.
Antworten