Ich versuche, die Unabhängigkeit einiger kontinuierlicher Variablen in einem Datensatz zu bewerten, und möchte das ausführen, was ich normalerweise als "Chi-Plot" zweier kontinuierlicher Variablen bezeichnet habe.Gibt es in JMP ein gleichwertiges Diagramm, das verwendet werden kann?
Bitte posten Sie zuerst ein Bild des gewünschten Grundstücks.
Zweitens finden Sie unter Analyse> Multivariate Methoden> Multivariate eine Plattform, auf der Beziehungen zu zwei Variablen gleichzeitig untersucht werden können.
Hier ist ein Beispiel für eine Chi-Handlung ...

Dies ist eine Methode, um schnell zu bewerten, ob zwei kontinuierliche Variablen unabhängig sind.Wenn sie unabhängig sind, verteilen sie sich zufällig um 0.Ich habe in der multivariaten Plattform von JMP keine Methode gesehen, mit der die Annahme der Unabhängigkeit von zwei kontinuierlichen Variablen schnell beurteilt werden kann.Gibt es in JMP eine Möglichkeit, diese Art der Bewertung der variablen Unabhängigkeit durchzuführen?
Es gibt verschiedene Möglichkeiten, die Multikollinearität zu testen. Mark schlug bereits Multivariate Methoden> Multivariate vor. Wenn Sie diese Plattform ausführen, können Sie Pearson-Korrelationskoeffizienten (sowie andere) und auch Mahalanobis-Ausreißer erhalten und schöne Streudiagramme erhalten. Sie können VIFs auch aus Parameterschätzungstabellen abrufen.
Ich habe diese Referenz verwendet, weil sie die einzige war, die die erforderlichen Details enthielt:
"Marchu, Victor AA, Francisco AR Rojas und Francisco Louzada,
"Der Chi-Plot und sein asymptotisches Konfidenzintervall für die Analyse von Bivariaten
Abhängigkeit: Eine Anwendung auf die durchschnittlichen Intelligenz- und Atheismusraten
across Nations Data ", Journal of Data Science 10 (2012), 711-722."
Ich habe dieses Skript geschrieben und die Gleichungen überprüft, aber die Handlungen sehen für mich nicht richtig aus, also bin ich nicht weiter gegangen.
Names Default to Here( 1 );
// get data columns for Y and X roles
dt = Current Data Table();
If( Is Empty( dt ),
Throw( "No data table open" );
);
dialog = New Window( "Chi-Plot", << Modal,
H List Box(
dt clb = Col List Box( All ),
Line Up Box( N Col( 2 ),
Button Box( "Y",
item = dt clb << Get Selected;
y clb << Append( item );
If( N Items( x clb << Get Items ) > 0,
ok bb << Enable( 1 ),
ok bb << Enable( 0 )
);
),
y clb = Col List Box(
Min Items( 1 ), Max Items( 1 ),
<< Set Analysis Type( Continuous )
),
Button Box( "X",
item = dt clb << Get Selected;
x clb << Append( item );
If( N Items( y clb << Get Items ) > 0,
ok bb << Enable( 1 ),
ok bb << Enable( 0 )
);
),
x clb = Col List Box(),
Button Box( "Remove",
y clb << Remove All;
x clb << Remove All;
ok bb << Enable( 0 );
),
Text Box( "")
)
),
H List Box(
ok bb = Button Box( "OK",
y col = Column( (y clb << Get Items)[1] );
x col = Column( (x clb << Get Items)[1] ),
<< Enable( 0 )
),
Button Box( "Cancel")
)
);
// unload dialog
If( dialog["Button"] == -1,
Throw( "User cancelled" );
);
// utility to user alerts
alert# = Function( { msg },
New Window( "Alert", << Modal,
Text Box(
" " || msg || " ",
<< Justify Text( "center" ),
<< Set Font Size( 12 )
),
Text Box( " " )
);
);
// sample size and scaling
n = N Row( dt );
scale = 1 / (n-1);
// data vectors
y = y col << Get As Matrix;
x = x col << Get As Matrix;
// cumulative indicators
F = G = H = J( n, 1, . );
// chi-plot coordinates
χ = λ = J( n, 1, . );
For Each Row(
If( Not( Excluded( Row State() ) ),
i = Row();
// compute cumulative indicators for current row
F[i] = scale * Summation( j = 1, n, If( j != i, x[j] <= x[i], 0 ) );
G[i] = scale * Summation( j = 1, n, If( j != i, y[j] <= y[i], 0 ) );
H[i] = scale * Summation( j = 1, n, If( j != i, x[j] <= x[i] & y[j] <= y[i], 0 ) );
// computer chi-plot coordinates for current row
χ[i] = (H[i] - (F[i] * G[i])) / Sqrt( F[i] * (1-F[i]) * G[i] * (1-G[i]) );
sign = ((F[i]-0.5) * (G[i]-0.5));
λ[i] = 4 * sign * Maximum( (F[i]-0.5)^2, (G[i]-0.5)^2 );
);
);
// add coordinates to data table
χ col = dt << New Column( "χ", Numeric, Continuous, Values( χ ) );
λ col = dt << New Column( "λ", Numeric, Continuous, Values( λ ) );
// add table script for Chi-Plot
dt << New Script( "Chi-Plot",
Current Data Table() << Graph Builder(
Size( 600, 400 ),
Show Control Panel( 0 ),
Show Legend( 0 ),
Variables( X( :λ ), Y( :χ ) ),
Elements( Points( X, Y, Legend( 3 ) ) ),
SendToReport(
Dispatch(
{},
"λ",
ScaleBox,
{Min( -1 ), Max( 1 ), Inc( 0.2 ), Minor Ticks( 0 )}
),
Dispatch(
{},
"χ",
ScaleBox,
{Min( -1 ), Max( 1 ), Inc( 0.2 ), Minor Ticks( 0 )}
),
Dispatch( {}, "graph title", TextEditBox, {Set Text( "Chi-Plot" )} )
)
);
);
// launch Chi-Plot
gb = dt << Graph Builder(
Size( 600, 400 ),
Show Control Panel( 0 ),
Show Legend( 0 ),
Variables( X( :λ ), Y( :χ ) ),
Elements( Points( X, Y, Legend( 3 ) ) ),
SendToReport(
Dispatch(
{},
"λ",
ScaleBox,
{Min( -1 ), Max( 1 ), Inc( 0.2 ), Minor Ticks( 0 )}
),
Dispatch(
{},
"χ",
ScaleBox,
{Min( -1 ), Max( 1 ), Inc( 0.2 ), Minor Ticks( 0 )}
),
Dispatch( {}, "graph title", TextEditBox, {Set Text( "Chi-Plot" )} )
)
);Ich konnte die Arbeit an dieser Handlung fortsetzen. Ich habe sie als Add-on hochgeladen. Sie ist hier zu finden.
Hinweis: Ich habe einen Fehler behoben und das Add-on aktualisiert, um es nützlicher zu machen. Falls Sie es vor heute heruntergeladen haben, sollten Sie es durch die neuere Version ersetzen.