Programmier-Tutorial - Seite 17

 

Einführung in die lineare Regression


Einführung in die lineare Regression

Hallo an alle! Heute tauchen wir in die lineare Regression ein. Wir haben Streudiagramme untersucht und Situationen diskutiert, in denen wir eine lineare Beziehung zwischen Variablen beobachten. Mit anderen Worten: Wenn die X-Variable zunimmt, nimmt die Y-Variable tendenziell mit einer konstanten Rate zu oder ab. Wir können dieses Phänomen diskutieren, wenn die Beziehung eng ist, wie auf der linken Seite des Diagramms dargestellt, und wenn die Beziehung stärker verstreut ist, wie auf der rechten Seite dargestellt.

Um diesen linearen Zusammenhang zu analysieren, können wir auf intelligente Weise eine Linie über das Streudiagramm zeichnen. Diese Linie wird als Best-Fit-Linie oder Regressionslinie bezeichnet. Lassen Sie uns nun tiefer in die mathematischen Aspekte der linearen Regression eintauchen. Die Schlüsselidee beinhaltet den Begriff der Residuen. Wir legen eine Linie über unsere Daten und wählen einen bestimmten X-Wert. Anschließend berechnen wir die Differenz zwischen dem tatsächlichen Y-Wert im Datensatz und dem vorhergesagten Y-Wert auf der Linie. Diese Differenz wird als Residuum bezeichnet und stellt die Abweichung zwischen der tatsächlichen und der erwarteten Höhe dar. Indem wir die Residuen für jeden Punkt in unserem Datensatz berechnen, sie quadrieren und aufsummieren, erhalten wir eine Menge, die minimiert werden kann.

Mithilfe der Analysis können wir diese Größe minimieren und die Gleichung für die Regressionsgerade der kleinsten Quadrate ableiten. Es stellt sich heraus, dass diese Linie durch den Punkt (X-Balken, Y-Balken) verläuft, wobei X-Balken der Stichprobenmittelwert für die X-Werte und Y-Balken der Stichprobenmittelwert für die Y-Werte ist. Die Steigung der Regressionslinie der kleinsten Quadrate wird durch r × (sy / SX) angegeben, wobei r der Korrelationskoeffizient, sy die Standardabweichung der Y-Werte und SX die Standardabweichung der X-Werte ist. Zusammenfassend ist die Gleichung für die Regressionslinie der kleinsten Quadrate unten auf der Folie angegeben.

Die manuelle Berechnung dieser Werte kann mühsam sein. Um den Prozess zu vereinfachen, wird dringend empfohlen, Technologie oder Software zu verwenden. Betrachten wir die Daten, die dem auf einer vorherigen Folie gezeigten Streudiagramm entsprechen. Durch die Berechnung der Mittelwerte und Standardabweichungen stellen wir fest, dass der X-Balken 5,4, der Y-Balken 2,4 usw. beträgt. Der Korrelationskoeffizient beträgt ungefähr 0,34, was auf eine mäßige bis schwache positive Korrelation hinweist. Durch Einsetzen dieser Werte erhalten wir die Gleichung für die Regressionslinie der kleinsten Quadrate: 0,19x + 1,34.

Ich muss betonen, dass die manuelle Durchführung dieser Berechnungen mühsam sein kann. Der Einsatz von Technologie ist ein viel effizienterer Ansatz. Hier ist ein Beispiel dafür, wie die Regressionslinie der kleinsten Quadrate für diese Daten aussieht. Es scheint eine angemessene Übereinstimmung mit den Datenpunkten zu geben.

 

Streudiagramme und Regressionslinien in R


Streudiagramme und Regressionslinien in R

Hallo an alle! In dieser Kurzanleitung zeige ich Ihnen, wie Sie mit dem Paket ggplot2 in RStudio wunderschöne Grafiken erstellen. Diese Diskussion ist für Anfänger auf der Statistik-Eins-Ebene geeignet. Obwohl leistungsfähigere und anspruchsvollere Methoden verfügbar sind, werde ich mich auf die intuitivsten und unkompliziertesten Ansätze konzentrieren. Wir werden mit einer Teilmenge des Iris-Datensatzes arbeiten, insbesondere mit 50 Zeilen, die der Virginia-Blume entsprechen. Unser Ziel ist es, ein Streudiagramm der Kelchblattlänge gegenüber der Kelchblattbreite zu erstellen.

Bevor wir beginnen, stellen Sie sicher, dass Sie das Tidyverse-Paket oder seine Paketfamilie laden. Wenn Sie es noch nicht installiert haben, verwenden Sie den Befehl „install.packages('tidyverse')“. Sollten bei der Installation Fehler auftreten, empfiehlt es sich, online nach Lösungen zu suchen. Sobald das Paket geladen ist, können wir fortfahren.

Um ein Streudiagramm zu erstellen, verwenden wir die grundlegende Syntax „qplot“. Geben Sie zunächst den x-Wert an, der „virginica$sepal_length“ für die horizontale Achse ist, wobei „virginica“ der Datensatz und „sepal_length“ der Spaltenname ist. Geben Sie dann den y-Wert als „virginica$sepal_width“ für die vertikale Achse an. Als nächstes müssen wir definieren, wie die Daten angezeigt werden sollen. Für ein Streudiagramm verwenden wir „geom = 'point'“. Stellen Sie sicher, dass Sie „point“ richtig schreiben. Dadurch wird ein einfaches Streudiagramm erstellt.

Lassen Sie uns das Diagramm verbessern, indem wir die Achsenbeschriftungen anpassen und Anpassungsoptionen wie das Ändern von Farben und Punktgrößen erkunden. Um die Beschriftung der X-Achse zu ändern, verwenden Sie „xlab = ‚sepal length‘“. Legen Sie in ähnlicher Weise „ylab = ‚sepal width‘“ fest, um die Beschriftung der y-Achse zu ändern. Um die Punktfarbe zu ändern, fügen Sie „color = ‚darkred‘“ hinzu. Beachten Sie, dass die Syntax zur Angabe der Farbe aufgrund der Komplexität von R etwas eigenartig ist.

Nachdem die Beschriftungen und die Punktfarbe angepasst wurden, können Sie weiter experimentieren. Sie können beispielsweise die Punktgröße ändern, indem Sie „size = ...“ verwenden. Zusätzlich können Sie der Handlung einen Haupttitel hinzufügen. Ich empfehle Ihnen, die Möglichkeiten von „qplot“ weiter zu erkunden, indem Sie „?qplot“ verwenden oder online suchen.

Gehen wir noch einen Schritt weiter und fügen eine Regressionslinie hinzu. Ein Vorteil von ggplot2 und Tidyverse besteht darin, dass Sie Ihrem Plot Ebenen hinzufügen können, indem Sie einfach den vorhandenen Befehl erweitern. Beginnen Sie mit dem zuvor erstellten Befehl „qplot“ und fügen Sie nun „geom_smooth()“ hinzu. Dadurch wird eine angepasste Linie generiert. Da wir an einer linearen Regression interessiert sind, geben Sie „method = ‚lm‘“ an, um das lineare Modell zu verwenden. Es empfiehlt sich, dieses Argument einzubeziehen, insbesondere in Einführungskursen in die Statistik.

Wenn Sie die Farbe der Regressionslinie ändern möchten, können Sie „color = ‚darkgray‘“ in den Befehl „geom_smooth()“ einfügen. Dadurch entsteht eine andere Farbe.

Lassen Sie uns abschließend die Frage beantworten, was passiert, wenn wir „se = FALSE“ entfernen. Ohne dieses Argument zeigt R ein Fehlermenü an. Grob gesagt stellt dieses Band ein Konfidenzintervall dar. Wenn wir alle Diagramme im Datensatz, aus dem diese 50 Beobachtungen entnommen wurden, grafisch darstellen würden, würden wir erwarten, dass die Regressionslinie innerhalb dieses Fehlerbandes liegt und ein grobes Maß für die Unsicherheit liefert.

 

Verwenden von Regressionslinien, um Vorhersagen zu treffen


Verwenden von Regressionslinien, um Vorhersagen zu treffen

Hallo an alle! Heute werden wir uns eingehender mit Regressionslinien befassen. Wir werden untersuchen, wie man sie für Vorhersagen verwendet, Vorhersagefehler diskutieren und verstehen, wann es unangemessen ist, sie für Vorhersagen zu verwenden. Lass uns anfangen!

Vielleicht kennen Sie dieses Beispiel aus meinem vorherigen Video. Wir haben einen kleinen Datensatz mit fünf Werten und ich habe eine Linie mit der besten Anpassung gezeichnet: Ŷ = 0,19X + 1,34. Betrachten wir nun einen neuen Eingabewert, x = 6. Mithilfe der Regressionsgleichung können wir den entsprechenden y-Wert vorhersagen. In diesem Fall beträgt die Vorhersage 2,54. Wir können diesen vorhergesagten Wert als blauen Punkt bei (6, 2,54) auf der Linie darstellen.

Manchmal treffen wir Vorhersagen, wenn wir einen X-Wert haben, der einem Y-Wert im Datensatz entspricht. Zum Beispiel haben wir bei x = 3 den Punkt (3, 1). Von welcher Art von Fehler sprechen wir in diesem Fall? Wir bezeichnen es als Residuum. Das Residuum für einen Datenpunkt ist die Differenz zwischen dem tatsächlichen y-Wert an diesem Punkt und dem durch die Regressionslinie vorhergesagten y-Wert. Bei x = 3 beträgt der tatsächliche y-Wert 1 und der vorhergesagte y-Wert 1,97, was zu einem Residuum von -0,97 führt. Das bedeutet, dass der Punkt (3, 1) etwa 0,97 Einheiten unterhalb der Regressionsgeraden liegt.

Bei der Verwendung von Regressionslinien zur Erstellung von Vorhersagen ist es wichtig, den Bereich des Datensatzes zu berücksichtigen. Wir sollten nur Vorhersagen für x-Werte treffen, die innerhalb des Bereichs oder einer sinnvollen Erweiterung des Datensatzes liegen. Ein klassisches Beispiel ist Alter versus Gewicht. Wie in der Grafik dargestellt, besteht ein linearer Zusammenhang für Personen unter etwa 12 Jahren. Innerhalb dieses Bereichs können wir anhand des linearen Zusammenhangs einigermaßen genaue Gewichtsvorhersagen basierend auf dem Alter treffen. Dies wird als Interpolation bezeichnet, bei der wir Werte innerhalb des Datensatzbereichs vorhersagen.

Es wäre jedoch falsch, diese lineare Beziehung zu verwenden, um Vorhersagen außerhalb dieses Bereichs zu treffen, beispielsweise für eine vierzigjährige Person. Wenn wir die lineare Beziehung anwenden würden, um ihr Gewicht vorherzusagen, läge das Ergebnis bei über 340 Pfund, was eindeutig unrealistisch ist. Dies nennt man Extrapolation und sollte vermieden werden.

Zusammenfassend lässt sich sagen, dass es bei der Verwendung von Regressionslinien wichtig ist, Vorhersagefehler und -beschränkungen zu verstehen. Residuen helfen uns, die Abweichungen zwischen tatsächlichen und vorhergesagten Werten zu quantifizieren. Wir sollten nur Vorhersagen innerhalb des Bereichs des Datensatzes oder einer sinnvollen Erweiterung davon treffen. Die Extrapolation, bei der Werte außerhalb des Datensatzbereichs vorhergesagt werden, kann zu ungenauen und unzuverlässigen Ergebnissen führen.

 

Regression und Vorhersage in R mit dem Befehl lm()


Regression und Vorhersage in R mit dem Befehl lm()

Hallo an alle! Heute berechnen wir Regressionslinien in R mithilfe des integrierten Datensatzes „Autos“. Schauen wir uns zunächst den Datensatz an und sammeln wir mithilfe der Befehle „Anzeigen“ und „Fragezeichen“ einige Informationen darüber. Der Datensatz „Autos“ besteht aus 50 Einträgen, die Geschwindigkeiten und Bremswege von Autos aus den 1920er Jahren darstellen. Obwohl es sich nicht um neue Daten handelt, können wir dennoch lineare Zusammenhänge untersuchen.

Zur Visualisierung der Daten verwenden wir das Paket „ggplot2“ aus der Bibliothek „tidyverse“. Stellen Sie sicher, dass Sie das Paket mit dem Befehl „library(tidyverse)“ laden. Wenn Sie das Paket „tidyverse“ noch nicht installiert haben, können Sie dies mit dem Befehl „install.packages('tidyverse')“ nachholen.

Als Nächstes erstellen wir mit dem Befehl „qplot“ ein Streudiagramm der Daten. Wir tragen die Geschwindigkeit auf der x-Achse (erklärende Variable) und die Distanz auf der y-Achse (Reaktionsvariable) ein. Um anzuzeigen, dass wir mit dem Datensatz „cars“ arbeiten und ein Streudiagramm wünschen, verwenden wir „geom='point'“. Das Diagramm zeigt eine weitgehend lineare Beziehung, was darauf hindeutet, dass die Durchführung einer linearen Regression sinnvoll ist.

Um dem Diagramm eine Regressionslinie hinzuzufügen, verwenden wir „geom_smooth(method = 'lm', se = FALSE)“. Dies gibt einen linearen Regressionsglätter ohne den Standardfehlerbalken an.

Lassen Sie uns nun die Gleichung der Regressionsgeraden bestimmen. Wir verwenden den Befehl „lm“, der für „Lineares Modell“ steht. Die Syntax folgt einem „y ~ x“-Muster, wobei die Antwortvariable (Entfernung) mit der erklärenden Variablen (Geschwindigkeit) in Beziehung steht. Das Ergebnis weisen wir einer Variablen namens „model“ zu. Durch die Eingabe von „summary(model)“ können wir zusätzliche Informationen über die Regressionslinie erhalten, einschließlich Koeffizienten, Residuen und statistischen Maßen wie multiples R-Quadrat und angepasstes R-Quadrat.

Wenn wir auf bestimmte Informationen aus dem „Modell“-Objekt zugreifen möchten, können wir es als Datenrahmen behandeln und „$“ verwenden, um gewünschte Spalten zu extrahieren. Beispielsweise gibt „model$residuals“ einen Vektor der 50 Residuen an.

Wir können die Residuen und angepassten Werte sogar als neue Spalten zum ursprünglichen „Autos“-Datensatz hinzufügen, indem wir „cars$residuals“ bzw. „cars$predicted“ verwenden.

Abschließend verwenden wir die Funktion „Vorhersagen“, um Vorhersagen für Geschwindigkeiten zu erhalten, die nicht im Datensatz vorhanden sind. Wir stellen das „Modell“ als erstes Argument bereit und erstellen einen Datenrahmen mit einer Spalte namens „Geschwindigkeit“ (entsprechend der erklärenden Variablen). Mit der Funktion „data.frame“ geben wir die gewünschten Geschwindigkeitswerte ein. Beispielsweise können wir den Bremsweg für Geschwindigkeiten wie 12,5, 15,5 und 17 vorhersagen. Die vorhergesagten Werte werden angezeigt.

 

Restgrundstücke in R


Restgrundstücke in R

Hallo zusammen, im heutigen Video werden wir Restplots in R mit dem Befehl qplot untersuchen. In diesem Tutorial werde ich hauptsächlich Basis-R-Funktionen verwenden. Ich arbeite auch an einem weiteren Video über das Broom-Paket, das eine Standardmethode zum Ausführen von Aufgaben in R darstellt. Ich werde einen Link zu diesem Video bereitstellen, sobald es fertig ist.

In diesem Tutorial konzentrieren wir uns auf die Variablen „Wind“ und „Temp“ aus dem integrierten Luftqualitätsdatensatz in R. Dieser Datensatz enthält tägliche Luftqualitätsmessungen in New York von Mai bis September 1973.

Laden wir zunächst das Tidyverse-Paket. Obwohl wir nur die qplot-Funktion verwenden, laden wir aus Gründen der Konsistenz das gesamte Paket.

Bevor wir uns mit der Modellierung befassen, ist es wichtig, unsere Daten zu visualisieren. Erstellen wir einen Qplot, indem wir „wind“ als erklärende Variable (air_quality$wind) und „temp“ als Antwortvariable (air_quality$temp) festlegen. Da wir zwei Variablen haben, verwendet R standardmäßig ein Streudiagramm.

Bei der Untersuchung des Diagramms können wir eine lineare Beziehung zwischen den beiden Variablen beobachten, die jedoch nicht besonders stark ist. Um diese Beziehung zu quantifizieren, berechnen wir den Korrelationskoeffizienten mithilfe der Funktion cor. Der resultierende Korrelationskoeffizient beträgt -0,458, was auf eine negative Korrelation hinweist.

Nachdem wir nun eine lineare Beziehung hergestellt haben, können wir dem Diagramm eine Regressionslinie hinzufügen. Wir ändern den Befehl qplot, indem wir die Funktion geom_smooth mit method = „lm“ einschließen, um ein lineares Modell anzugeben. Der Einfachheit halber lassen wir das Fehlerband weg.

Nachdem wir die Regressionsgerade hinzugefügt haben, können wir mit der Konstruktion eines linearen Modells fortfahren und die Gleichung für die Regressionsgerade erhalten. Weisen wir das lineare Modell mithilfe der lm-Funktion einer Variablen namens „Modell“ zu. Wir geben „temp“ als Antwortvariable und „wind“ als erklärende Variable an. Es ist wichtig, den Namen des Datenrahmens explizit zu erwähnen.

Um mehr Einblicke in das Modell zu gewinnen, können wir die Zusammenfassungsfunktion verwenden, um eine Zusammenfassung des Modells zu erhalten. Die Zusammenfassung liefert verschiedene Informationen, darunter den Achsenabschnitt (90,1349) und den Koeffizienten für die Steigung (-1,23). Die Interpretation des Steigungskoeffizienten ist, dass mit jeder Zunahme des Windes die Temperatur um etwa 1,23 Einheiten abnimmt. Wenn Sie die Hilfedatei überprüfen, erhalten Sie Informationen zu den verwendeten Einheiten, z. B. Wind in Meilen pro Stunde und Temperatur in Grad Fahrenheit.

Wir können direkt auf die Koeffizienten zugreifen, indem wir die Funktion „Koeffizienten“ verwenden, die den Achsenabschnitt und den Windkoeffizienten aus dem Modell zurückgibt. Darüber hinaus können wir die angepassten Werte mithilfe der Funktion „fitted.values“ erhalten, die uns einen Vektor der vorhergesagten Temperaturen für jeden Windwert liefert. Wir können dies als neue Spalte „vorhergesagt“ zum Luftqualitätsdatenrahmen hinzufügen.

Ebenso können wir die Residuen mithilfe der Residuenfunktion ermitteln, die uns die Unterschiede zwischen den beobachteten und den vorhergesagten Werten liefert. Das Hinzufügen der Residuen als weitere Spalte, „Residuen“, zum Datenrahmen schließt unsere Untersuchung ab. Wir können den Datenrahmen erneut visualisieren, um das Vorhandensein der neuen Spalten zu bestätigen.

Um die Beziehung zwischen den angepassten Werten und Residuen zu beurteilen, können wir ein Residuendiagramm erstellen. Im Befehl qplot legen wir die angepassten Werte als X-Achsen-Variable (fitted.values(model)) und die Residuen als Y-Achsen-Variable (Residuen(Modell)) fest. Ein Streudiagramm wird gemäß den Angaben in den qplot-Argumenten generiert.

Der Zweck des Residuendiagramms besteht darin, etwaige Muster oder Trends in den Residuen zu identifizieren. In einem gültigen linearen Modell mit konstanter Varianz sollte die Darstellung einer Wolke ohne erkennbares Muster ähneln. Das Hinzufügen einer Regressionslinie mit geom_smooth und method = „lm“ hilft, dies zu überprüfen. Wir werden außerdem se = FALSE setzen, um die Standardfehlerleiste zu entfernen.

Wenn wir das Residuendiagramm untersuchen, können wir erkennen, dass es kein erkennbares Muster oder Trend gibt, was darauf hindeutet, dass unser Modell die lineare Beziehung angemessen erfasst. Die durch y = 0 dargestellte Regressionsgerade bestätigt diese Beobachtung.

Damit ist unser Tutorial zum Erstellen von Residuendiagrammen in R mit dem Befehl qplot abgeschlossen. Durch die Visualisierung und Analyse der Residuen können wir die Güte der Anpassung und die Angemessenheit unseres linearen Modells beurteilen. Denken Sie daran, dass es in R mehrere Möglichkeiten gibt, die gleichen Ergebnisse zu erzielen, und dass die Erforschung verschiedener Syntaxen und Funktionen Ihr Verständnis der Sprache verbessern kann.

 

Ausreißer: Hebelwirkung, Diskrepanz und Einfluss


Ausreißer: Hebelwirkung, Diskrepanz und Einfluss

Hallo an alle! Heute befassen wir uns mit den Konzepten von Hebelwirkung, Diskrepanz und Einfluss im Kontext der linearen Regression. Obwohl ich mich auf das Szenario mit einer einzigen erklärenden Variablen konzentriere, beachten Sie bitte, dass alles, was hier besprochen wird, auch direkt für höhere Dimensionen gilt.

In einem Datensatz mit zwei Variablen können einzelne Beobachtungen ungewöhnliche Merkmale in ihren X-Werten, Y-Werten oder beiden aufweisen. Wenn wir den Begriff „Ausreißer“ verwenden, beziehen wir uns insbesondere auf Beobachtungen, die in y-Richtung deutlich vom allgemeinen Trend der Daten abweichen. Bei diesen Ausreißern handelt es sich um Punkte mit hoher Diskrepanz.

Im alltäglichen Sprachgebrauch verwenden wir den Begriff „Ausreißer“ jedoch oft lockerer. Um dieses Konzept zu veranschaulichen, betrachten wir drei Datensätze, die jeweils einen linearen Trend mit einer ungewöhnlichen Beobachtung anzeigen. In den ersten beiden Diagrammen werden Sie einen Punkt bemerken, der weit von der Regressionslinie entfernt liegt und eine hohe Diskrepanz aufweist. Im dritten Fall stimmt der ungewöhnliche Wert ziemlich gut mit dem allgemeinen Datentrend überein, sodass er nicht allein aufgrund der Diskrepanz als Ausreißer betrachtet werden würde.

Lassen Sie uns nun unseren Fokus auf die Hebelwirkung verlagern. Beobachtungen mit ungewöhnlichen x-Werten haben ein größeres Potenzial, die Anpassung des Modells zu beeinflussen, und solchen Beobachtungen wird nachgesagt, dass sie einen hohen Einfluss haben. Wenn wir dieselben drei Diagramme aus der Perspektive der Hebelwirkung untersuchen, stellen wir fest, dass die beiden Diagramme ganz rechts Beobachtungen mit hoher Hebelwirkung enthalten. Diese Ausreißer weisen X-Werte auf, die deutlich von den meisten Daten abweichen. Umgekehrt weist das erste Diagramm einen Ausreißer mit geringer Hebelwirkung auf, da sein x-Wert gut mit den anderen Werten im Datensatz übereinstimmt.

Eine Beobachtung, die die Anpassung eines Modells wesentlich verändert, gilt als stark einflussreich. Kehren wir zu den ersten beiden Ausreißern aus den vorherigen Diagrammen zurück und untersuchen wir sie durch die Linse des Einflusses. Im ersten Diagramm beobachten wir einen Ausreißer mit geringem Einfluss. Wenn wir diesen Wert aus dem Datensatz entfernen, erfährt die Regressionslinie keine wesentlichen Verschiebungen. Bemerkenswert ist, dass die Steigung relativ unverändert bleibt. Umgekehrt sehen wir im Diagramm ganz rechts einen Ausreißer mit hohem Einfluss. Beim Entfernen aus dem Datensatz erfährt die Regressionslinie erhebliche Änderungen. In der Regel weisen einflussreiche Beobachtungen sowohl eine hohe Diskrepanz als auch eine hohe Hebelwirkung auf.

Obwohl alle diese Konzepte quantifiziert werden können, werde ich in diesem Video nicht auf die Details eingehen. Ich möchte Ihnen jedoch den richtigen Weg weisen, wenn Sie dies weiter erforschen möchten. Die Diskrepanz wird häufig mithilfe studentisierter Residuen gemessen. Hierbei handelt es sich um standardisierte Residuen, die die Abweichung von Beobachtungen in y-Richtung von der Vorhersage des Modells quantifizieren. Die Hebelwirkung kann anhand von Hat-Werten beurteilt werden, die den Abstand der x-Werte vom erwarteten durchschnittlichen x-Wert messen. Schließlich wird der Einfluss häufig anhand der Cook-Distanz quantifiziert.

Glücklicherweise müssen Sie diese Maße nicht manuell berechnen, da R praktische Methoden bereitstellt. Besonders nützlich ist in dieser Hinsicht das Besenpaket, zu dem ich schnellstmöglich ein Video erstellen werde.

 

R^2: der Bestimmungskoeffizient


R^2: der Bestimmungskoeffizient

Das heutige Thema ist das R-Quadrat, das Bestimmtheitsmaß. Es misst die Streuung von Beobachtungen um eine Regressionslinie oder ein beliebiges statistisches Modell. Es stellt den Anteil der Varianz der Antwortvariablen (y) dar, der auf Änderungen der erklärenden Variablen zurückgeführt werden kann, insbesondere in höherdimensionalen Fällen.

Bei linearen Modellen liegt das R-Quadrat immer zwischen 0 und 1. Werte näher bei 1 zeigen an, dass die Datenpunkte eng um die Regressionslinie gruppiert sind, während Werte näher bei 0 auf eine größere Streuung hinweisen.

Um dieses Konzept klarer zu machen, visualisieren wir drei Datensätze. Jeder Satz hat eine Varianz von 1 für die y-Werte, und ich habe für jeden Fall die Regressionslinie gezeichnet. Wenn das R-Quadrat von 0,2 über 0,5 auf 0,8 steigt, beobachten wir eine immer engere Streuung der Daten um die Regressionslinie.

Lassen Sie uns nun auf eine genauere Definition eingehen. Das R-Quadrat wird als Varianz der angepassten y-Werte dividiert durch die Varianz der beobachteten y-Werte berechnet. Algebraisch kann dies ausgedrückt werden als 1 minus der Varianz der Residuen dividiert durch die Varianz der beobachteten y-Werte. Im technischen Sinne können wir es wie folgt schreiben:

R-Quadrat = (Varianz der Residuen) / (Varianz der beobachteten y-Werte)

Zur weiteren Vereinfachung kürzen wir diesen algebraischen Ausdruck oft als R-Quadrat = 1 - (RSS / TSS) ab, wobei RSS die Restsumme der Quadrate und TSS die Gesamtsumme der Quadrate bezeichnet.

In einem Regressionsmodell der kleinsten Quadrate mit einer einzelnen erklärenden Variablen ist es wichtig zu beachten, dass das Bestimmtheitsmaß gleich dem Quadrat des Stichprobenkorrelationskoeffizienten (R) ist. Mit anderen Worten: Das R-Quadrat (großes R-Quadrat) ist gleich dem kleinen R-Quadrat.

Bei höherdimensionalen Modellen ist die Aussage ähnlich. Das R-Quadrat entspricht dem Quadrat der Korrelation zwischen beobachteten und angepassten y-Werten. Dies gilt sogar für den Fall einer einzelnen Variablen, obwohl wir normalerweise nicht in diesem Sinne darüber nachdenken.

Es ist erwähnenswert, dass das R-Quadrat oft missverstanden und falsch interpretiert wird. Lassen Sie uns also seine Bedeutung und Grenzen klären. Das R-Quadrat misst den Anteil der Variabilität in y, der durch die Variabilität in x erklärt werden kann. Per Definition wird es bei Datensätzen mit hoher Variabilität der y-Werte niedriger sein. Daher sind Modelle mit einem R-Quadrat nahe 1 nicht unbedingt gut, wie an einem Beispiel gezeigt wird, bei dem das R-Quadrat 0,93 beträgt, das lineare Modell jedoch schlecht für die Daten geeignet ist.

Ebenso sind Modelle mit niedrigem R-Quadrat nicht unbedingt schlecht. Beispielsweise passt ein Modell mit einem R-Quadrat von 0,16 möglicherweise sehr gut zu den Daten, aber die Daten selbst enthalten von Natur aus viele natürliche Schwankungen und Rauschen.

Denken Sie daran, dass das R-Quadrat nur die Variabilität um die Regressionslinie misst und nicht direkt die Nützlichkeit oder Angemessenheit eines Modells anzeigt. Um lineare Modelle richtig zu bewerten, berücksichtigen Sie mehrere Tools und Faktoren, wie z. B. den Reststandardfehler (die Standardabweichung der Residuen), der Aufschluss über die Variabilität der Daten im Vergleich zu vorhergesagten Werten gibt. Darüber hinaus können Sie das Signifikanzniveau der Regression mithilfe der t-Statistik für lineare Anpassungen und der f-Statistik zum Testen der Nullhypothese untersuchen, dass alle Regressionskoeffizienten in höherdimensionalen Modellen Null sind.

Bei der Bewertung von Modellen ist es wichtig, sich nicht nur auf das R-Quadrat zu verlassen, sondern es in Verbindung mit anderen Metriken und Analysen zu betrachten.

 

Chi-Quadrat-Berechnungen in R


Chi-Quadrat-Berechnungen in R

Heute werden wir einige Chi-Quadrat-Berechnungen in R durchführen. Der Chi-Quadrat-Test wird häufig in der Inferenzstatistik für verschiedene Zwecke verwendet, beispielsweise zum Testen der Anpassungsgüte und zum Testen von Hypothesen mit Varianzen. Chi-Quadrat ist eine kontinuierliche Zufallsvariable, die rechtsschief ist. Sein Erwartungswert wird mit „r“ bezeichnet und seine Varianz beträgt 2r. In den meisten Anwendungen ist r eine positive ganze Zahl, obwohl es auch eine nicht ganze Zahl sein kann.

Wenn der Wert von r zunimmt, verschiebt sich die Wahrscheinlichkeitsdichtefunktion (PDF) der Chi-Quadrat-Verteilung nach rechts und beginnt aufgrund des zentralen Grenzwertsatzes einer Glockenkurve zu ähneln. Der Parameter r ist als Anzahl der Freiheitsgrade für die Chi-Quadrat-Verteilung bekannt.

In R gibt es vier Grundfunktionen zur Berechnung von Chi-Quadrat-Verteilungen:

  1. rchisq(r, n): Diese Funktion generiert n Zufallswerte aus der Chi-Quadrat-Verteilung mit r Freiheitsgraden. Beispielsweise generiert rchisq(5, 16) 16 Zufallswerte aus Chi-Quadrat mit 5 Freiheitsgraden.

  2. pchisq(x, r): Dies ist die kumulative Verteilungsfunktion (CDF) für die Chi-Quadrat-Verteilung mit r Freiheitsgraden. Es gibt die Wahrscheinlichkeit zurück, zufällig einen Wert kleiner oder gleich x in dieser Verteilung zu erhalten. Beispielsweise gibt pchisq(8, 5) die Wahrscheinlichkeit an, einen Wert kleiner oder gleich 8 im Chi-Quadrat mit 5 Freiheitsgraden zu erhalten, was ungefähr 0,844 entspricht.

  3. qchisq(p, r): Dies ist die inverse CDF für die Chi-Quadrat-Verteilung mit r Freiheitsgraden. Es gibt den x-Wert zurück, für den die Wahrscheinlichkeit, einen Wert kleiner oder gleich x zu erhalten, gleich p ist. Beispielsweise gibt qchisq(0,5, 12) den Median des Chi-Quadrats mit 12 Freiheitsgraden an, der ungefähr 0,5 beträgt.

  4. dchisq(x, r): Diese Funktion gibt den Wert der Wahrscheinlichkeitsdichtefunktion (PDF) der Chi-Quadrat-Verteilung mit r Freiheitsgraden bei x an. Das PDF ist von theoretischer Bedeutung, wird jedoch in numerischen Berechnungen weniger häufig verwendet.

Lassen Sie uns nun einige Beispielprobleme mit diesen Funktionen lösen:

Aufgabe 1: Berechnen Sie die Wahrscheinlichkeit, zufällig einen x-Wert zwischen 12 und 18 im Chi-Quadrat mit 15 Freiheitsgraden zu erhalten.

prob <- pchisq ( 18 , 15 ) - pchisq ( 12 , 15 )

Die Wahrscheinlichkeit beträgt ungefähr 0,4163.

Problem 2: Unter der Annahme, dass eine 80-prozentige Wahrscheinlichkeit besteht, dass eine zufällige Chi-Quadrat-Entnahme mit 20 Freiheitsgraden größer als x ist, ermitteln Sie den Wert von x.

x <- qchisq ( 0.2 , 20 )

Der Wert von x beträgt ungefähr 14,57844.

Aufgabe 3: Simulieren Sie zehntausend Ziehungen aus der Chi-Quadrat-Verteilung mit 4 Freiheitsgraden und erstellen Sie ein Histogramm der Ergebnisse.

x <- rchisq ( 4 , 10000 )
library ( ggplot2 )
qplot ( x , geom = "histogram" , col = I ( "black" ) )

Dadurch wird ein Histogramm der simulierten Werte erstellt.

Ich hoffe, dies hilft Ihnen, Chi-Quadrat-Berechnungen in R zu verstehen und anzuwenden.

 

Die Chi-Quadrat-Verteilung verstehen


Die Chi-Quadrat-Verteilung verstehen

Heute besprechen wir die Chi-Quadrat-Verteilung, ein grundlegendes Konzept, auf das Sie beim Studium statistischer Schlussfolgerungen auf Ihrer Reise durch die Datenwissenschaft stoßen werden. Die Chi-Quadrat-Verteilung entsteht, wenn Sie messen möchten, wie weit eine Reihe unabhängiger numerischer Beobachtungen von ihren erwarteten Werten abweicht.

Um dies formeller zu erklären, berechnen Sie einen Z-Score für jede Beobachtung, indem Sie den erwarteten Wert von der Beobachtung subtrahieren und ihn durch die Standardabweichung dividieren. Nachdem Sie jeden dieser Z-Scores quadriert und summiert haben, erhalten Sie die Chi-Quadrat-Zufallsvariable. Diese Variable quantifiziert die Gesamtabweichung Ihrer Beobachtungen von ihren erwarteten Werten.

Wenn beispielsweise alle Beobachtungen perfekt mit ihren erwarteten Werten übereinstimmen, wäre die Chi-Quadrat-Statistik Null. Je weiter die Ergebnisse von den erwarteten Werten abweichen, desto höher ist der Chi-Quadrat-Wert. Durch die Quadrierung der Z-Scores stellen wir sicher, dass sich niedrige und hohe Abweichungen nicht gegenseitig aufheben.

Die Chi-Quadrat-Verteilung mit r Freiheitsgraden stellt die Stichprobenverteilung dieser Zufallsvariablen dar. Die Freiheitsgrade (r) entsprechen der Anzahl unabhängiger Beobachtungen oder Z-Scores. Beachten Sie, dass die Zufallsvariable denselben Namen wie die Verteilung hat, der Kontext jedoch normalerweise zwischen ihnen unterscheidet.

Da es sich bei jedem Z-Score um eine kontinuierliche Zufallsvariable handelt, folgt die Summe ihrer Quadrate einer Chi-Quadrat-Verteilung. Die Wahrscheinlichkeitsdichtefunktion der Chi-Quadrat-Verteilung ist nur für nicht negative Chi-Quadrat-Werte positiv. Die Verteilung ist rechtsschief, da extrem hohe Werte für einzelne Z-Scores immer unwahrscheinlicher werden.

Der typische Graph der Chi-Quadrat-Verteilung mit 5 Freiheitsgraden zeigt diese starke Rechtsschiefe. Seine Unterstützung (Reihe möglicher Ergebnisse) besteht ausschließlich aus positiven Werten. Zwei wichtige Tatsachen, die es zu beachten gilt, sind, dass der erwartete Wert der Chi-Quadrat-Verteilung mit r Freiheitsgraden gleich r ist und dass der Höhepunkt der Verteilung bei R minus 2 auftritt, vorausgesetzt, dass R mindestens zwei beträgt (andernfalls ist er Null). ).

Mit zunehmender Anzahl an Freiheitsgraden nähert sich die Chi-Quadrat-Verteilung einer Normalverteilung nach dem zentralen Grenzwertsatz an. Diese Annäherung ist in einer Skizze zu erkennen, die die Chi-Quadrat-Verteilung mit R gleich 50 zeigt, die immer noch eine leichte Rechtsschiefe aufweist.

Die Chi-Quadrat-Verteilung wird häufig in der Inferenzstatistik verwendet, wie aus der ersten Folie hervorgeht. Zu den gängigen Anwendungen gehören Signifikanztests für Varianz unter der Annahme einer Normalverteilung, Tests auf Anpassungsgüte für kategoriale Variablen und Chi-Quadrat-Tests für Unabhängigkeit.

Um Wahrscheinlichkeiten in einer Chi-Quadrat-Verteilung zu berechnen, können Sie die kumulative Verteilungsfunktion (CDF) verwenden. Der CDF, bezeichnet als F(x), gibt die Wahrscheinlichkeit an, einen Wert kleiner oder gleich x in der angegebenen Chi-Quadrat-Verteilung zu erhalten. Dies lässt sich anhand einer visuellen Darstellung besser verstehen, wobei der schattierte Bereich die Wahrscheinlichkeit darstellt.

In R können Sie Chi-Quadrat-Berechnungen mit dem Befehl pchisq() durchführen und dabei den interessierenden Wert und die Anzahl der Freiheitsgrade angeben. Um beispielsweise die Wahrscheinlichkeit zu berechnen, in der Chi-Quadrat-Verteilung mit fünf Freiheitsgraden einen Wert kleiner oder gleich 8 zu erhalten, würden Sie pchisq(8, 5) verwenden, was ungefähr 0,843 ergibt.

Wenn Sie an weiteren Details oder Berechnungen zur Chi-Quadrat-Verteilung in R interessiert sind, habe ich spezielle Videos zu diesen Themen. Schauen Sie sich diese gerne an, um ausführlichere Erklärungen zu erhalten.

 

Testen der Anpassungsgüte


Testen der Anpassungsgüte

Hallo zusammen, heute besprechen wir das Testen der Anpassungsgüte mithilfe der Chi-Quadrat-Verteilung. Angenommen, wir haben eine kategoriale Variable, beispielsweise das Jahr der Studenten im Statistikunterricht an einer großen Universität, und man sagt uns, dass sie einer bestimmten Verteilung folgt: 50 % Erstsemester, 30 % Zweitsemester, 10 % Juniorstudenten und 10 % Seniorstudenten. Wie können wir testen, ob diese Verteilung zu unseren Beispieldaten passt?

Lassen Sie uns zunächst die Null- und Alternativhypothese aufstellen. Die Nullhypothese besagt, dass die Grundgesamtheit aller Studierenden im Statistikunterricht der behaupteten Verteilung folgt (50 % Erstsemester, 30 % Zweitsemester usw.), während die Alternativhypothese eine andere Verteilung annimmt. Um zwischen diesen Hypothesen zu testen, vergleichen wir die beobachteten Zählungen in unseren Beispieldaten mit den erwarteten Zählungen unter der Nullhypothese.

Bezeichnen wir die beobachteten Zählungen als „o“ und die erwarteten Zählungen als „e“. Wir berechnen eine Teststatistik namens Chi-Quadrat, die die Summe von (o - e)^2 / e ist. Wenn die Nullhypothese wahr ist, folgt diese Teststatistik einer Chi-Quadrat-Verteilung mit k – 1 Freiheitsgraden, wobei k die Anzahl der Kategorien ist.

In unserem Fall haben wir vier Kategorien, also verwenden wir die Chi-Quadrat-Verteilung mit drei Freiheitsgraden. Eine größere Teststatistik weist darauf hin, dass unsere Stichprobendaten weniger mit der Nullhypothese kompatibel sind, was auf eine schlechtere Anpassung schließen lässt.

Um den Signifikanztest durchzuführen und das Chi-Quadrat zu berechnen, müssen wir die erwarteten Zählungen unter der Nullhypothese berechnen. Bei einer Stichprobengröße von 65 multiplizieren wir die Prozentsätze mit 65, um die erwarteten Zahlen von 32,5, 19,5, 6,5 und 6,5 zu erhalten.

Als Nächstes berechnen wir die Chi-Quadrat-Teststatistik, indem wir für jede Zelle die erwartete Anzahl von der beobachteten Anzahl subtrahieren, das Ergebnis quadrieren, durch die erwartete Anzahl dividieren und diese Werte über alle Kategorien hinweg summieren. In unserem Fall beträgt die Teststatistik 3,58.

Um die Wahrscheinlichkeit zu ermitteln, einen Wert zu erhalten, der größer oder gleich unserer beobachteten Chi-Quadrat-Statistik ist, verwenden wir die kumulative Verteilungsfunktion in R, dargestellt durch den Befehl p Chi-Quadrat. Wenn wir das Ergebnis von eins subtrahieren, erhalten wir den p-Wert. In diesem Beispiel beträgt der p-Wert etwa 0,31, was darauf hindeutet, dass die Daten keinen eindeutigen Beweis gegen die Nullhypothese liefern.

Es ist wichtig zu beachten, dass ein großer p-Wert die Nullhypothese nicht beweist; es deutet einfach darauf hin, dass es keine Beweise dafür gibt. Abschließend sollten wir überlegen, wann es angebracht ist, einen Chi-Quadrat-Anpassungstest zu verwenden. Erstens gilt es für kategoriale Variablen. Wenn Sie über quantitative Variablen verfügen, können Sie diese durch Binning in kategoriale Variablen umwandeln. Darüber hinaus sollten die Daten durch einfache Zufallsstichproben gewonnen werden und die erwartete Zellzahl sollte im Allgemeinen mindestens fünf betragen. Wenn viele Behälter fast leer sind, sind in bestimmten Situationen möglicherweise alternative Methoden besser geeignet, beispielsweise der exakte Fisher-Test.

Abgesehen von den Überlegungen, die wir zuvor erwähnt haben, gibt es noch einige weitere Punkte, die bei der Entscheidung, ob ein Chi-Quadrat-Anpassungstest verwendet werden soll, zu beachten sind. Diese beinhalten:

  1. Unabhängigkeit: Die Beobachtungen innerhalb jeder Kategorie sollten unabhängig voneinander sein. Diese Annahme ist wichtig für die Validität des Tests. Wenn die Beobachtungen nicht unabhängig sind, sind alternative statistische Tests möglicherweise besser geeignet.

  2. Stichprobengröße: Obwohl es keine feste Regel gibt, liefern größere Stichproben tendenziell zuverlässigere Ergebnisse. Bei größeren Stichproben können bereits kleine Abweichungen von der erwarteten Verteilung zu statistisch signifikanten Ergebnissen führen. Allerdings können sehr große Stichprobengrößen manchmal selbst bei geringfügigen Abweichungen von der erwarteten Verteilung zu signifikanten Ergebnissen führen. Daher ist es wichtig, auch die praktische Bedeutung zu berücksichtigen.

  3. Parameterschätzung: In einigen Fällen sind die erwarteten Zahlen für jede Kategorie nicht genau bekannt, sondern werden anhand der Daten geschätzt. Bei der Schätzung von Parametern aus denselben Daten, die für Hypothesentests verwendet wurden, kann es zu verzerrten Ergebnissen kommen. In solchen Situationen sollten Anpassungen oder alternative Methoden in Betracht gezogen werden.

  4. Kategoriale Variablen mit mehreren Ebenen: Der bisher besprochene Chi-Quadrat-Anpassungstest eignet sich zum Testen der Anpassung einer einzelnen kategorialen Variablen an eine bestimmte Verteilung. Wenn Sie jedoch über mehrere kategoriale Variablen verfügen und deren gemeinsame Verteilung untersuchen möchten, sind andere Tests wie der Chi-Quadrat-Unabhängigkeitstest oder logarithmisch-lineare Modelle möglicherweise besser geeignet.

Es ist erwähnenswert, dass der Chi-Quadrat-Anpassungstest ein nützliches Werkzeug zur Untersuchung ist, ob beobachtete Daten einer erwarteten Verteilung folgen. Es liefert jedoch keine Informationen über die Gründe für etwaige Abweichungen und gibt auch keine Auskunft darüber, welche spezifischen Kategorien am meisten zu den Abweichungen beitragen.

Wie bei jedem statistischen Test sollten bei der Interpretation der Ergebnisse der Kontext, das Hintergrundwissen und die spezifischen Ziele der Analyse berücksichtigt werden. Es ist von entscheidender Bedeutung, die Einschränkungen und Annahmen des Tests zu verstehen und ihn als Teil einer umfassenden Analyse zu verwenden, anstatt sich ausschließlich auf sein Ergebnis zu verlassen.

Zusammenfassend ist der Chi-Quadrat-Anpassungstest eine wertvolle Methode zur Beurteilung der Übereinstimmung zwischen beobachteten Daten und einer erwarteten Verteilung für kategoriale Variablen. Durch den Vergleich beobachteter und erwarteter Zählungen, die Berechnung der Teststatistik und die Bestimmung des p-Werts können wir die Kompatibilität der Daten mit der Nullhypothese bewerten. Es ist jedoch wichtig, die Annahmen, die Stichprobengröße und andere Faktoren zu berücksichtigen, um die Gültigkeit und Relevanz des Tests in einem bestimmten Kontext sicherzustellen.

Grund der Beschwerde: