Lo script seguente è tratto da una delle voci dell'indice di scripting per il messaggio "Get Estimates". L'oggetto restituito è un elenco. I singoli elementi dell'elenco sono facilmente analizzabili? Type(estimate[n]), "Name". estimate[2], ad esempio, sembra contenere una struttura dati coerente. Come si restituisce, ad esempio, la matrice indicata con "Time End"?
So che tutte le informazioni in uscita da "<< Get Estimates" sono in ultima analisi accessibili tramite "<< Get Report" e decifrando la gerarchia della casella di visualizzazione. Tuttavia, la struttura concisa e facilmente interpretabile di "Get Estimates" sembra che potrebbe essere più facile da usare e produrre un codice più semplice.
//scripting index script
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Reliability/Fan.jmp" );
obj = dt <<
Life Distribution(
Y( :Time ),
Censor( :Censor ),
Fit Exponential,
Set Scale( Exponential )
);
estimate = obj << Get Estimates;
Show( estimate );
//=======================
//content of estimate[2]
nonparametric estimate(
{Time Start(
[450, 1150, 1150, 1600, 2070, 2070, 2080, 3100, 3450, 4600, 6100, 8750]
), Time End(
[1150, 1150, 1600, 2070, 2070, 2080, 3100, 3450, 4600, 6100, 8750, 11500]
), Estimate(
[0.0142857142857142, 0.0287815126050419, 0.0432773109243697,
0.0579961215255332, 0.0751234647705236, 0.0922508080155139,
0.109378151260504, 0.128327552297515, 0.147698051135348, 0.17276575551372,
0.204582457224731, 0.292962184199761]
), Standard Error(
[0.0141833064113421, 0.0200581923902226, 0.024441823837429,
0.0281508958436217, 0.0324334709625386, 0.0360727593407561,
0.0392481174087784, 0.0427434474191106, 0.0459737153753552,
0.0509999042262761, 0.0581216781767556, 0.098041976927893]
)}
)Come vuoi analizzarlo? Questa informazione è sufficiente per poter usare elenchi come questo in JMP?
estimate["nonparametric estimate"]["Time End"]
In questo caso potresti usare questo splendido script.
End = Arg( Arg( Arg( estimate[2], 1 ), 2 ), 1 );
Oppure usa quello molto migliore di @jthi .
Funziona perfettamente. Grazie! Quel tipo di struttura dati è documentata? Non l'ho trovata.
Le liste hanno un bel po' di documentazione in Scripting Guide Scripting Guide > Data Structures > Lists in JSL Scripts . Penso che quel comportamento sia documentato da qualche parte MA potrebbe non essere nella sezione liste... Potrei averlo ottenuto per pura fortuna e provando un sacco di cose o potrei averlo letto (cercherò di trovarlo nella documentazione e modificherò se lo trovo). @EvanMcCorkle
Modifica: l'ho trovato menzionato almeno qui (non l'ho trovato da qui la prima volta che l'ho preso di sicuro, ma è menzionato) Guida alla creazione di script > Strutture dati > Elenchi negli script JSL > Indici negli elenchi
