Verteilungen transformieren, um die Streuung der Werte hervorzuhebenLiebe JMP-Community,
Maschineninfo: W7 Enterprise 64-Bit, JMP Pro 14.1.0
Ich bin daran interessiert, eine Datenspalte zu transformieren, um die Verteilung der Werte innerhalb von Binning-Bereichen hervorzuheben. Die ursprünglichen Daten sind ganze Zahlen und mehr oder weniger normalverteilt (siehe Y3-Verteilung unten), aber ich möchte die Daten so transformieren, dass sie die Daten in einem Bin-Bereich aufnimmt und verteilt, um sie besser zu erfassen Datenbereich innerhalb eines Bins (siehe Y2-Verteilung). Ich füge mehrere Bilder bei, um zu erklären, was ich zu tun versuche – es handelt sich um künstliche Bilder, die den Link zeigen und nur dazu dienen, das gewünschte Ergebnis zu zeigen.
Ich glaube nicht, dass es so einfach ist, eine Transformation „zentrieren“ oder „standardisieren“ durchzuführen, da keines davon die Daten wirklich ausreichend verteilt (siehe die hervorgehobenen Teile in den Bildern). Auch der Box Cox oder die Log-Transformationen tun das nicht. Vielleicht ist es etwas, das mehr als eine Transformation erfordern würde?
Alle Vorschläge sind sehr willkommen.
Danke!,
DS



Betreff: Verteilungen transformieren, um die Streuung der Werte hervorzuhebenHallo @txnelson Und @Dan_Obermiller ,
Ihre Vorschläge waren sehr hilfreich und ich glaube, dass dies die Richtung ist, in die ich gehen muss.
Ich denke jedoch, dass ich die Dinge möglicherweise ein wenig ändern muss. Ich denke, um die Verteilung der Originaldaten bestmöglich zu erhalten, sollten Sie versuchen, etwas wie von Ihnen vorgeschlagen zu tun, aber stattdessen eine normale Mischungsfunktion verwenden. Als @txnelson Ich habe darauf hingewiesen, dass ich im Grunde versuche, mein CDF, das die Ganzzahleigenschaft meiner Daten als Stufen-CDF anzeigt, in eine kontinuierliche Funktion umzuwandeln.
Ich kann die Orts-, Streuungs- und Wahrscheinlichkeitswerte einer normalen 3-Mischungs-Anpassung abrufen (von der kontinuierlichen Anpassungsoption in der Verteilungsplattform) und diese als Vektoreingaben für die normale Mischungsfunktion verwenden, bin mir aber nicht sicher, ob das so ist Ist angemessen. Ich bin mir zum Beispiel nicht sicher, ob ich die Originaldaten, eine standardisierte Version davon oder eine zentrierte Version verwenden soll.Alle Versionen ergeben eine normale 3er-Mischung als beste Anpassung, jedoch mit unterschiedlichen Streuungen und Orten (Wahrscheinlichkeiten sind alle gleich, was nicht allzu überraschend ist).
Letztendlich muss ich die endgültige Verteilung nehmen und sie einer Logistikfunktion zuführen, damit ich die Wahrscheinlichkeit eines Ereignisses entweder als Ja/Nein ermitteln und den IfMax der Ja/Nein-Logistikfunktionen auswerten kann (meine hat zu viele Ebenen). Spalte, um den Daten eine Gewinnmatrix zuzuordnen).
Vielen Dank für Ihr Feedback und Ihren Input, da es mir hilft, über den besten Ansatz für die Analyse meiner Daten nachzudenken.
DS
Betreff: Verteilungen transformieren, um die Streuung der Werte hervorzuhebenEs hört sich so an, als müssten Sie die Fähigkeit von JMP nutzen, um Ihr eigenes Diagramm zu erstellen, egal welches Design Sie haben möchten.Sie verwenden hierfür JSL.
Und ja, Sie können die Wahrscheinlichkeit einer bestimmten Verteilung mithilfe von ermitteln Wählen Sie die Funktion Normal Distribution() oder die Funktion xxx Distribution() für die Verteilung aus, an der Sie interessiert sind.Hier ist ein Beispiel für die Funktion Normal Distribution()
Names Default To Here( 1 );
New Window( "Example: Normal Distribution",
y = Graph Box(
Y Scale( 0, 1 ),
X Scale( -4, 4 ),
XName( "q" ),
Pen Color( "red" );
Y Function( Normal Distribution( q ), q );
)
);
Betreff: Verteilungen transformieren, um die Streuung der Werte hervorzuhebenIch glaube nicht, dass es den „besten“ Weg gibt, das zu tun, was Sie tun möchten. Da Sie die Variabilität *HINZUFÜGEN*, müssen Sie einige Annahmen treffen. Angenommen, der Wert beträgt 65. Wir müssen davon ausgehen, dass die 65 „richtig“ ist, eine höhere Präzision ist jedoch aufgrund von Messfehlern (oder Rundungsberichten oder ähnlichem) nicht verfügbar. Eine Möglichkeit, dies zu erreichen, besteht darin, eine Spalte zufälliger Normalvariablen mit einem Mittelwert von Null und einer Standardabweichung von etwa 0,33 zu erstellen. Fügen Sie nun diese Spalte mit Zufallszahlen zu Ihren ganzzahligen Werten hinzu. Dies sollte die ganzen Zahlen in eine kontinuierliche Skala „umwandeln“. Ich habe eine Standardabweichung von 0,33 verwendet, da 3*.33 1 ist, also sollten Zahlen ungefähr zwischen -1 und +1 addiert werden. Daher sollten Sie immer noch einigermaßen nahe am ganzzahligen Wert liegen.
Als Proof of Concept habe ich eine Spalte mit 100 Ganzzahlen namens X erstellt. Ich habe die RanNor-Spalte als eine Menge zufälliger normaler Zahlen erstellt. Schließlich ist NewX einfach X + RanNor. Hier sind die Ergebnisse:

NewX hat eine sehr ähnliche Form wie
Suchst du danach??
Ich sollte hinzufügen, dass die Histogramme ähnlich aussehen sollten, da der Zweck darin besteht, die Daten zu ändern, aber nicht so sehr, dass sie die Botschaft ändern, die die Daten vermitteln. Um mehr Balken anzuzeigen, als Sie es in Ihrem ursprünglichen Beitrag wollten, müssen Sie die Bin-Breite ändern, wie von TXNelson vorgeschlagen. Dann sehen Sie die Streuung um jeden der ganzzahligen Werte.
Betreff: Verteilungen transformieren, um die Streuung der Werte hervorzuhebenHallo @txnelson ,
Danke für die Rückmeldung. Ja, ich habe mir das angeschaut, aber es ist nicht wirklich das, was ich suche.
Ich denke, ich muss die Daten tatsächlich transformieren, bin mir aber nicht sicher, wie ich das am besten machen kann. Wenn ich die „Standard“-Optionen zur Datentransformation ausprobiere, verteilen die resultierenden Verteilungen die Daten nicht über einen größeren Bereich.
Beispielsweise enthält der hervorgehobene Bereich im letzten Satz von Verteilungsbildern, den ich gepostet habe, nur drei verschiedene Ganzzahlwerte innerhalb dieses Bereichs (65, 66, 67) [das ist schwer zu erkennen, ich weiß]. Aber was ich tun würde, ist, es so umzuwandeln, dass es eine eher kontinuierliche Verteilung von beispielsweise 0 bis 10 aufweist. Wenn ich die Daten mit einer Log-Funktion (ln) transformiere, werden diese drei ganzen Zahlen immer noch nur in drei neue nicht ganzzahlige rationale Zahlen gruppiert und die ganze Zahl nicht in eine kontinuierliche Verteilung umgewandelt.
Ich denke, was ich tun möchte, ist, die Ganzzahlen, z. B. alle Werte von 66, in eine kontinuierliche Verteilung umzuwandeln, dies jedoch für die gesamte Menge der Ganzzahlen zu tun, die den Bereich von 27 bis 90 abdecken. Gibt es eine Möglichkeit, ganze Zahlen in eine Wahrscheinlichkeit umzuwandeln?
Danke für das Feedback und die Hilfe!,
DS
Betreff: Verteilungen transformieren, um die Streuung der Werte hervorzuhebenWenn Sie einen bestimmten Datenbereich in einem Histogramm betrachten und dessen Klassengenauigkeit ändern möchten, können Sie dies ganz einfach tun, indem Sie die Achsenskala interaktiv strecken und dann mit dem Handwerkzeug die Klassengrößen ändern.
Müssen Sie das tun?
