Grafik beschreiben
Grafik beschreiben
Hallo zusammen,
ich habe eine ähnliche Situation. Bei mir ist es eine lineare Regression von einer unabhängigen numerischen auf eine kategorial binäre abhängige Variable.
Übersicht des Datensatzes:
ist dies möglich?
Bild
Gruß
Andreas
ich habe eine ähnliche Situation. Bei mir ist es eine lineare Regression von einer unabhängigen numerischen auf eine kategorial binäre abhängige Variable.
Übersicht des Datensatzes:
ist dies möglich?
Bild
Gruß
Andreas
Re: Grafik beschreiben
es fehlt noch folgende Information. Die wurde beim Hochladen wohl "abgeschnitten.
Ich habe die Regression durchgeführt und mit erglm geplottet. Die y Achse wurde mit 1 und 2 beschrieben, obwohl diese Werte für Ja bzw. Nein stehen. Der Datensatz war ursprünglich kategorial binär und und wurde eigentlich mit 1 und 2 ausgewiesen.
Ich habe diesen in numerische Variablen mit .asfactor umgewandelt, damit die lineare Regression funktioniert.
Nun würde ich gerne die 2 Werte nachträglich (also nach dem Plotten) an der y Achse mit Ja / Nein ausweisen. Kann mir jemand einen Tipp geben?
Viele Grüße
Andreas
Ich habe die Regression durchgeführt und mit erglm geplottet. Die y Achse wurde mit 1 und 2 beschrieben, obwohl diese Werte für Ja bzw. Nein stehen. Der Datensatz war ursprünglich kategorial binär und und wurde eigentlich mit 1 und 2 ausgewiesen.
Ich habe diesen in numerische Variablen mit .asfactor umgewandelt, damit die lineare Regression funktioniert.
Nun würde ich gerne die 2 Werte nachträglich (also nach dem Plotten) an der y Achse mit Ja / Nein ausweisen. Kann mir jemand einen Tipp geben?
Viele Grüße
Andreas
Re: Grafik beschreiben
...hier ist noch der Befehl mit der die Grafik erzeugt wurde
- Dateianhänge
-
- Ergebnis Erglm.PNG (5.78 KiB) 713 mal betrachtet
Re: Grafik beschreiben
Aufrgrund eines fehlenden reproduzierbaren Beispiel, kann ich dir nur diese Codezeilen geben, welche aber vieles klarer machen sollten:
Code: Alles auswählen
factor(c(1,2,1,1,1,2))
factor(c(1,2,1,1,1,2), levels = c(2, 1))
factor(c(1,2,1,1,1,2), levels = c(1, 2), labels = c("Ja", "Nein"))
factor(c(1,2,1,1,1,2), levels = c(2, 1), labels = c("Nein", "Ja"))
factor(c(1,2,1,1,1,2), levels = c(2, 1), labels = c("Ja", "Nein"))
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
.
Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
.
Re: Grafik beschreiben
sagt: https://www.inwt-statistics.de/blog-art ... ssion.htmlVielleicht stellen Sie sich an diesem Punkt die Frage, warum eine lineare Regression für die Modellierung von binären abhängigen Variablen nicht die optimale Methode ist.
Re: Grafik beschreiben
Hallo Vogo,
warum postest Du kleine Ausschnitte von Code als Bild, statt alle relevanten Ausschnitte in Code-Tags zu posten?
Der Tipp lautet scale_y_continuous und wird ungefähr so angewendet, wie in diesem Beispiel:
Neben der jetzt besseren y-Achsenbeschriftung beachte bitte, wie ich durch einfaches Verwackeln der y-Werte mit "jitter" verhindert habe, dass die Punkte alle übereinander geplottet werden, wie das wahrscheinlich bei Deiner Grafik der Fall ist (Du hast über 1000 Beobachtungen aber keine tausend Punkte auf dem Plot. Eine andere sehr elegante Antwort darauf bietet das package ggbeeswarmplot, auf das Du Dir hier Appetit holen kannst: https://cran.r-project.org/web/packages ... amples.pdf )
Ich kenne zwar die Funktion plotModel nicht, aber die Idee, dem Plot einfach "scale_y_continuous" hinzuzuaddieren sollte funktionieren.
LG,
Bernhard
warum postest Du kleine Ausschnitte von Code als Bild, statt alle relevanten Ausschnitte in Code-Tags zu posten?
.asfactor kenne ich nicht und as.factor wandelt nichts ins numerische um. Aber auch wenn Du keinen Code zeigst, kann man ahnen, was Du meinst.
Nun würde ich gerne die 2 Werte nachträglich (also nach dem Plotten) an der y Achse mit Ja / Nein ausweisen. Kann mir jemand einen Tipp geben?
Der Tipp lautet scale_y_continuous und wird ungefähr so angewendet, wie in diesem Beispiel:
Code: Alles auswählen
library(ggplot2)
mdf <- data.frame(x = round(c(rnorm(30,5,5), rnorm(30,10,5)),0),
y = c(rep(1,30), rep(2,30)))
vorher <- ggplot(mdf) + geom_point(aes(x=x, y=jitter(y, factor = .2)))
print(vorher)
nachher <- vorher + scale_y_continuous(breaks=1:2, labels = c("Nöö", "Yeah"))
print(nachher)
Ich kenne zwar die Funktion plotModel nicht, aber die Idee, dem Plot einfach "scale_y_continuous" hinzuzuaddieren sollte funktionieren.
LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Re: Grafik beschreiben
Hallo Bernhard,
danke für Deine Beschreibung. Für mich ist das R Thema noch recht neu. Ich muss das in Ruhe ausprobieren. Möchte mich aber erstmal bedanken, dass Du versucht hast, Dich in meine Problematik reinzudenken.
Ich muss eine Hausarbeit schreiben und stosse von einem Problem auf das nächste. Weil mir vermutlich auch die mathematischen Grundkenntnisse und Grundverständlichkeiten fehlen.
Gruß
Andreas
danke für Deine Beschreibung. Für mich ist das R Thema noch recht neu. Ich muss das in Ruhe ausprobieren. Möchte mich aber erstmal bedanken, dass Du versucht hast, Dich in meine Problematik reinzudenken.
Ich muss eine Hausarbeit schreiben und stosse von einem Problem auf das nächste. Weil mir vermutlich auch die mathematischen Grundkenntnisse und Grundverständlichkeiten fehlen.
Gruß
Andreas
Re: Grafik beschreiben
Hallo Andreas,
wenn das so ist, darf ich vielleicht sagen, dass die y-Achsenbeschriftung wahrscheinlich nicht Dein führendes Problem ist. Auf das führende Problem hat Athomas hingewiesen: um aus einem metrischen Alter auf das binäre Verstehen zu schließen dürfte aller Wahrscheinlichkeit nach eine logistische Regression angemessen sein.
Du musst erst die Mathe klar kriegen, dann die Achsenbeschriftungen.
LG,
Bernhard
wenn das so ist, darf ich vielleicht sagen, dass die y-Achsenbeschriftung wahrscheinlich nicht Dein führendes Problem ist. Auf das führende Problem hat Athomas hingewiesen: um aus einem metrischen Alter auf das binäre Verstehen zu schließen dürfte aller Wahrscheinlichkeit nach eine logistische Regression angemessen sein.
Du musst erst die Mathe klar kriegen, dann die Achsenbeschriftungen.
LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Re: Grafik beschreiben
Hallo Bernhard,
vielen Dank.
Die Umwandlung war als eine Notlösung angedacht. Die Vorgabe war, dass mind. 1 lineare Regression durchzuführen ist. Nach Auswahl des Datensatzes, der vermutlich von mir sehr ungünstig gewählt worden ist, wollte ich mir mit dieser Umwandlung "as.numeric" (nicht as.factor, wie von mir fälschlicherweise beschrieben) behelfen.
Werde das nächste mal besser aufpassen und die y-Achsen Beschriftung jetzt so belassen.
Gruß
Andreas
vielen Dank.
Die Umwandlung war als eine Notlösung angedacht. Die Vorgabe war, dass mind. 1 lineare Regression durchzuführen ist. Nach Auswahl des Datensatzes, der vermutlich von mir sehr ungünstig gewählt worden ist, wollte ich mir mit dieser Umwandlung "as.numeric" (nicht as.factor, wie von mir fälschlicherweise beschrieben) behelfen.
Werde das nächste mal besser aufpassen und die y-Achsen Beschriftung jetzt so belassen.
Gruß
Andreas
Re: Grafik beschreiben
Hallo Andreas,
nur Du kannst entscheiden, was Deine Ausgangssituation ist, welche Mittel (Zeit und Mühe) Du einsetzen willst und damit letztlich, was Du abliefern willst. Die logistische Regression ist eine generalisierte lineare Regression bzw sie beinhaltet eine lineare Regression und wäre damit eine Erfüllung des Auftrags, eine lineare Regression zu rechnen. Außerdem wären die Daten dann nicht mehr ungünstig gewählt und so einfach kann es sein: http://www.cookbook-r.com/Statistical_a ... egression/
funktioniert?
LG,
Bernhard
nur Du kannst entscheiden, was Deine Ausgangssituation ist, welche Mittel (Zeit und Mühe) Du einsetzen willst und damit letztlich, was Du abliefern willst. Die logistische Regression ist eine generalisierte lineare Regression bzw sie beinhaltet eine lineare Regression und wäre damit eine Erfüllung des Auftrags, eine lineare Regression zu rechnen. Außerdem wären die Daten dann nicht mehr ungünstig gewählt und so einfach kann es sein: http://www.cookbook-r.com/Statistical_a ... egression/
Wie denn jetzt? Mit Zahlen? Oder hatWerde (...) die y-Achsen Beschriftung jetzt so belassen.
Code: Alles auswählen
plotModel(erglm1) + scale_y_continuous(breaks=1:2, labels = c("Nein", Ja"))
LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte