Kürzlich rief mich ein JMP-Benutzer mit der folgenden Frage an: „Wenn ich versuche, ein nominales logistisches Regressionsmodell anzupassen, erhalte ich eine JMP-Warnmeldung, die mir mitteilt, dass eine Antwort mindestens zwei Ebenen haben muss.“ Und die Plattform läuft nicht. Wenn ich jedoch ein Modell mit einer Teilmenge meiner Prädiktorvariablen auswähle, läuft das Modell. Was ist los? Ist alles verloren?“
Ist alles verloren? Vielleicht nicht.
Figure 1. A JMP Alert message.Figure 1. A JMP Alert message.Figure 1. A JMP Alert message.Figure 1. A JMP Alert message.Abbildung 1. Eine JMP-Warnmeldung.
Der Grund für die obige JMP-Warnmeldung sind zu viele fehlende Daten im Datensatz. Die Standardfunktion von JMP besteht darin, Zeilen von der Analyse auszuschließen, die fehlende Daten enthalten. Die Plattform wird nicht ausgeführt, wenn das Ausmaß des Fehlens schwerwiegend genug ist. Manchmal enthalten sogar fehlende Daten Informationen, die wir zur Lösung praktischer Probleme nutzen können. Wie können wir diese Möglichkeit untersuchen, wenn JMP standardmäßig Datenzeilen mit fehlenden Daten ausschließt? Die Antwort: Nutzen Sie die Funktionen zur Erkennung fehlender Daten, zur Imputation und zur informativen Modellierung fehlender Daten von JMP.
Best Practices für die statistische Modellierung legen nahe, dass wir etwas Zeit und Energie darauf verwenden sollten, die Qualität eines Datensatzes zu bewerten und dabei Probleme wie Ausreißer, unsinnige Werte, fehlende Werte und alle anderen Merkmale im Auge zu behalten, die die Analyse problematisch machen. Dieser Artikel liefert ein Beispiel dafür, wie man die Fähigkeiten von JMP rund um das „Fehlen“ von Daten nutzen kann, um dennoch fundierte Entscheidungen zu treffen und geeignete Maßnahmen zu ergreifen.
Jedes Modellierungsproblem sollte mit einem Geschäftsproblem beginnen, für dessen Lösung sich unsere Zeit lohnt. Ich werde ein hypothetisches, aber anschauliches Problem durcharbeiten. Ein Organisationskomitee für Sportfischerturniere möchte die wichtigsten Faktoren für die Zufriedenheit der Teilnehmer mit dem Turnier verstehen, um eine Wiederholungsteilnahme zu erreichen. Sie bitten die Teilnehmer des vergangenen Jahres um Informationen, Daten und Feedback zu der Wahrscheinlichkeit, dass sie nächstes Jahr am selben Turnier teilnehmen werden. Das Komitee sammelt Informationen von Teilnehmern über eine Umfrage. Ein Merkmal von Menschen, die angeln gehen, ist jedoch, dass sie möglicherweise nicht immer die ehrlichsten oder entgegenkommendsten sind. Wie viele Menschen würden ihre liebsten und produktivsten Angelplätze für die Landung des GROSSEN an einen völlig Fremden verschenken? Oder die Art des Köders, den sie verwendet haben?
Das Komitee fragt die Teilnehmer, ob sie wahrscheinlich im nächsten Jahr wiederkommen, nach dem Alter der Teilnehmer und nach der Art des Köders (künstlich oder lebend). Alter und Ködertyp sind die bei der Modellierung verwendeten Prädiktorvariablen. Der vollständige Datensatz ist unten dargestellt:
Figure 2: The Original DataFigure 2: The Original DataFigure 2: The Original DataFigure 2: The Original DataAbbildung 2: Die Originaldaten
Beachten Sie, dass sowohl für das Alter des Teilnehmers als auch für den Ködertyp mehrere Werte fehlen. Säulen. Da JMP Zeilen mit fehlenden Daten ausschließt, erhalten wir beim Versuch, die Daten „wie sie sind“ zu modellieren, die in Abbildung 1 dargestellte JMP-Warnmeldung. Tatsächlich gibt es nur zwei Zeilen ohne fehlende Werte (hervorgehoben in Abbildung 2)! Kein Wunder, dass JMP uns alarmiert!
Wie sollen wir vorgehen? Finden Sie die Befragten und fragen Sie „noch einmal“? Daten fabrizieren? Aufgeben?
Nun, lassen Sie uns einen Moment zurückgehen. Durch eine schnelle visuelle Prüfung der in Abbildung 2 dargestellten Datentabelle ist es einfach, die fehlenden Daten zu finden. Was wäre, wenn wir einen viel größeren Datensatz hätten? Millionen Zeilen? Hunderte von Spalten? Eine visuelle Prüfung auf „Fehlen“ ist eine unhaltbare Lösung. Die Missing Data Pattern- und Explore Missing Values-Plattformen von JMP kommen hier zur Rettung. Wenn wir Zeilen mit fehlenden Werten finden, was tun wir dann, wenn sie fehlen? Von hier aus kommen uns die Funktionen „Erkunden fehlender Werte“ und „Informative fehlende Werte“ in JMP zu Hilfe.
Lassen Sie uns die Missing Data Pattern-Plattform verwenden, um fehlende Werte zu finden. Die Plattform erstellt die in Abbildung 3 (unten rechts) gezeigte Tabelle „Missing Data Pattern“. Die Spalte „Muster“ ist der Schlüssel. Werte ungleich Null weisen auf ein Muster des Fehlens innerhalb der ursprünglichen Datentabelle hin. Im Zeileneintrag der Spalte „Muster“ ist jede Ziffer im Muster ein binärer Indikator einer Spalte in der ursprünglichen Datentabelle. Ein Muster aus ausschließlich Nullen (erste Zeile) zeigt an, dass keine Werte fehlen. Der Eintrag in der Spalte „Anzahl“ gibt an, dass es zwei Zeilen ohne fehlende Werte gibt. Die zweite Zeile weist auf ein fehlendes Muster hin, bei dem in den Zeilen Werte ausschließlich im Bait Type? fehlen. Spalte. In der dritten Zeile fehlen Werte in der Spalte „Alter des Teilnehmers“. Durch die Verwendung der Signaturfunktion für dynamische Verknüpfungen von JMP werden durch Auswahl der Zeilen 2 und 3 in der Datentabelle „Missing Data Pattern“ die entsprechenden Zeilen in den Originaldaten ausgewählt.
Figure 3. Missing Data Pattern Data Table and Original DataFigure 3. Missing Data Pattern Data Table and Original DataFigure 3. Missing Data Pattern Data Table and Original DataFigure 3. Missing Data Pattern Data Table and Original DataFigur 3. Fehlende Datenmusterdatentabelle und Originaldaten
Nachdem wir nun die fehlenden Werte gefunden haben, wie können wir die grundlegende Frage beantworten: Welche Faktoren beeinflussen die Rückkehrwahrscheinlichkeit der Teilnehmer? Von hier aus wenden wir uns der JMP-Plattform „Explore Missing Values“ zu, um Werte für die Spalte „Alter des Teilnehmers“ zu imputieren. Sind das nicht erfundene Daten? Ist das nicht unehrlich? Naja... nicht ganz... vor allem, wenn wir offenlegen, dass wir Ersatzwerte schaffen, um aus Modelperspektive das Baby nicht mit dem Bade ausschütten zu müssen. Es stellt sich heraus, dass Parameterschätzungen für die Effekte mit etwas Modellierungsmagie immer noch aussagekräftig sind, wenn wir unsere Ersatzwerte mit Bedacht wählen. Innerhalb der Explore Missing Values-Plattform gibt es zwei Imputationsalgorithmen. Für dieses Beispiel habe ich die in Abbildung 4 unten dargestellte Option „Multivariate Normalimputation“ gewählt. Beachten Sie, dass die Ersatzwerte, die dem Mittelwert des Alters des Teilnehmers entsprechen, jetzt in die Zeilen mit fehlenden Werten in der ursprünglichen Datentabelle eingetragen wurden.
Figure 4. Multivariate Normal ImputationFigure 4. Multivariate Normal ImputationFigure 4. Multivariate Normal ImputationFigure 4. Multivariate Normal ImputationFigur 4. Multivariate Normalimputation
Wie gehen wir nun mit den fehlenden Werten im Bait Type um? Spalte. Eine Möglichkeit, mit den fehlenden Werten für eine kategoriale Prädiktorvariable umzugehen, besteht darin, die Funktion „Informative Missing“ von JMP aufzurufen. Das Grundprinzip der Verwendung eines informativen fehlenden Konstrukts besteht darin, dass wir bereit sind, davon auszugehen, dass es ein Thema, eine Gemeinsamkeit oder eine lauernde Variable gibt, die hinter der Tatsache steckt, dass der Wert fehlt. Wie vielleicht die Zurückhaltung eines Turnierteilnehmers, die Art des Köders preiszugeben, den er aus einem unbekannten Grund verwendet hat?
Im Fenster „Modellspezifikation anpassen“ rufen wir „Informative Missing“ auf, indem wir „Informative Missing“ aus dem Dropdown-Menü mit dem roten Dreieck der Modellspezifikation auswählen (siehe Abbildung 5 unten).
Figure 5. Model Specification and Informative MissingFigure 5. Model Specification and Informative MissingFigure 5. Model Specification and Informative MissingFigure 5. Model Specification and Informative Missing Abbildung 5. Modellspezifikation und fehlende Informationen
Durch Auswahl von „Informativ fehlt“ weist JMP dem Ködertyp eine neue Stufe zu? Geben Sie den kategorialen Prädiktor „Fehlend“ ein und fahren Sie mit dem Modellanpassungsprozess unter Verwendung aller Werte in allen Spalten der Prädiktorvariablen fort. Abbildung 6 unten zeigt den Abschnitt „Effektzusammenfassung“ des Berichts zum Nominal Logistic-Regressionsmodell. Beachten Sie, dass der Ködertyp? scheint tatsächlich die Reaktion zu beeinflussen.
Figure 6. Effect Summary TableFigure 6. Effect Summary TableFigure 6. Effect Summary TableFigure 6. Effect Summary Table Abbildung 6. Wirkungszusammenfassungstabelle
Eine weitere Untersuchung des JMP Prediction Profiler, wie in Abbildung 7 dargestellt, zeigt, dass der fehlende Wert von Bait Type? treibt wirklich die Ja-Antwort an!
Figure 7. Prediction ProfilerFigure 7. Prediction ProfilerFigure 7. Prediction ProfilerFigure 7. Prediction ProfilerAbbildung 7. Vorhersage-Profiler
Jetzt kommt die Fachkompetenz ins Spiel. Es liegt auf der Hand, dass ein Turnierteilnehmer, der VIEL Erfolg beim Fischfang hat, sicherlich geneigt sein könnte, den von ihm verwendeten Ködertyp NICHT preiszugeben. Geschäftsgeheimnisse? Aber sie wären sicher geneigt, zu einem Turnier zurückzukehren, bei dem sie Erfolg hatten.
Nach der Analyse ergab ein tieferer Einblick in die Turnieraufzeichnungen zusätzliche Daten, die sicherlich mit der Vorstellung von geheimnisvollen Teilnehmern übereinstimmen. Das logistische Regressionsdiagramm „Fit Y by X“ unten in Abbildung 8. der Wahrscheinlichkeit, im nächsten Jahr wiederzukommen? ist eine Funktion des Gesamtgewichts der gefangenen Fische … und die Teilnehmer, die sie gefangen haben, verraten uns sicherlich nicht viel über ihre Geheimnisse.
Figure 8. Logistic Regression PlotFigure 8. Logistic Regression PlotFigure 8. Logistic Regression PlotFigure 8. Logistic Regression PlotAbbildung 8. Logistisches Regressionsdiagramm
Wenn Ihnen also das nächste Mal Werte in einem Datensatz fehlen, denken Sie daran, dass Sie mit JMP möglicherweise etwas über das System erfahren können, AUCH wenn tatsächlich Daten fehlen! Es ist tatsächlich nicht alles verloren.