Hai bisogno di aiuto per scrivere il codice ottimale per estrarre R ^ 2 e Slope da Bivariate FitTutto,
Vorrei chiedere alla comunità di spingermi nella giusta direzione.
Devo estrarre R^2 e Slope dal report e visualizzarlo sul grafico stesso in questo modo:

Lo farò analizzando gli alberi di visualizzazione e quindi esaminando l'aggiunta di script grafici alla trama stessa.
Ma poiché questo compito mi sembra molto standard e di routine, devo porre un paio di domande prima di approfondire gli alberi di visualizzazione:
1. Esiste un modo più semplice per farlo? Come la tabella dati combinata (che fornisce la pendenza ma non fornisce R^2) per ottenere il numero o come la linea di adattamento (X, Y, legenda (5), R²(1), equazione (1)) nel generatore di grafici (il cliente desidera per utilizzare Adattamento bivariato)
2. Forse qualcuno ha già uno snippet di codice pronto da utilizzare per questa attività?
Personalizzazione di massaRe: Ho bisogno di aiuto per scrivere codice ottimale per estrarre R^2 e Slope dall'adattamento bivariatoNames Default To Here(1);
dt=Open("$SAMPLE_DATA/Tablet Production.jmp");
biv=dt<<BIVARIATE></BIVARIATE>Re: Ho bisogno di aiuto per scrivere codice ottimale per estrarre R^2 e Slope dall'adattamento bivariatoEcco un esempio che dovrebbe iniziare.

Names Default To Here( 1 );
// Open Data Table: big class.jmp
// → Data Table( "big class" )
dt = Open( "$SAMPLE_DATA/big class.jmp" );
biv = Bivariate( Y( :height ), X( :weight ), Fit Line( {Line Color( {212, 73, 88} )} ) );
Report( biv )[framebox( 1 )] << add graphics script(
Text Color( {212, 73, 88} );
xMin = Current Report()[axisbox( 2 )] << get min;
yMin = Current Report()[axisbox( 1 )] << get min;
xMax = Current Report()[axisbox( 2 )] << get max;
yMax = Current Report()[axisbox( 1 )] << get max;
textList = {};
Insert Into( textList, xMin + (xMax - xMin) * .25 );
Insert Into( textList, yMax - (yMax - yMin) * .1 );
R2 = Current Report()["Summary of Fit"][Number Col Box( 1 )][1];
R2 = "R^2 = " || Format( R2, "Fixed Dec", 5, 3 );
Text( Right Justified, textList, R2 );
textList = {};
Insert Into( textList, xMin + (xMax - xMin) * .32 );
Insert Into( textList, yMax - (yMax - yMin) * .15 );
Slope = Current Report()["Parameter Estimates"][Number Col Box( 1 )][2];
Slope = "Slope = " || format(Slope,"Fixed Dec",9,5);
Text(Right Justified, textList, Slope);
);
report(biv)["Linear Fit"] << visibility("collapse");
report(biv)[PictureBox(2)] << visibility("collapse");
La documentazione per le aggiunte grafiche e la manipolazione dell'albero di visualizzazioneq è disponibile nella Guida allo scripting e nell'Indice dello scripting
Re: Ho bisogno di aiuto per scrivere codice ottimale per estrarre R^2 e Slope dall'adattamento bivariatoHo bisogno anche del grafico e deve essere Bivariate Fit. In precedenza il cliente stava scattando uno screenshot della trama e della parte del rapporto sottostante per includere Slope e R ^ 2 (fondamentalmente l'immagine nella mia domanda iniziale senza segni rossi). Sto automatizzando il tutto e voglio sbarazzarmi del rapporto e scrivere solo quei due valori sulla trama stessa (come illustrato nel mio screenshot con testo rosso sulla trama).
Re: Ho bisogno di aiuto per scrivere codice ottimale per estrarre R^2 e Slope dall'adattamento bivariatoSì, l'ho già scritto (come ho detto nella domanda iniziale è facile aggiungendo Linea di adattamento( X, Y, Legenda( 5 ), R²( 1 ), Equazione( 1 ) ) nel codice di Graph Builder), tuttavia, al cliente non piace Graph Builder per qualche motivo e insiste nell'usare l'adattamento bivariato.
Re: Ho bisogno di aiuto per scrivere codice ottimale per estrarre R^2 e Slope dall'adattamento bivariatoSe hai solo bisogno dei valori e non del grafico, puoi usare la funzione Regressione lineare () e ottenere i valori da lì
Names Default To Here( 1 );
// Open Data Table: big class.jmp
// → Data Table( "big class" )
dt = Open( "$SAMPLE_DATA/big class.jmp" );
/*Simple Linear Regression: y = intercept + beta * x + error*/
y = :height << get values;
X = :weight << get values;
{Estimates, Std_Error, Diagnostics} = Linear Regression( y, X, <<PRINTTOLOG></PRINTTOLOG>
rsquare = 0.502917160762804;
slope = 0.135507698709946;
Re: Ho bisogno di aiuto per scrivere codice ottimale per estrarre R^2 e Slope dall'adattamento bivariatoPuoi avvicinarti molto con Graph Builder
Equation includes the slope.Equation includes the slope.Equation includes the slope.L'equazione include la pendenza.
Re: Ho bisogno di aiuto per scrivere codice ottimale per estrarre R^2 e Slope dall'adattamento bivariatoEsistono almeno tre modi diversi per ottenere tali valori:
- Ottienili da Bivariate Report con il tuo metodo preferito
- Ottienili utilizzando Crea tabella dati/Crea tabella dati combinati e ottienili dalle tabelle dati create
- Usa la funzione matrice
In questo caso userei l'opzione 1 o 2 perché dovrai comunque creare il Bivariato