COME TROVARE MINIMA/MAXIMA IN JMP?C'è un modo per trovare questi minimi (come mostrato in figura) ed escludere i dati alla sua sinistra.

Modellazione statistica avanzataAutomazione e scriptingAnalisi e modellazione dei dati di baseRi: COME TROVARE MINIMA/MASSIMA IN JMP?Non sono la persona giusta per rispondere a questa domanda, ma probabilmente sono necessarie alcune informazioni in più per capire quale tipo di risposta si adatta:
I dati sono davvero così fluidi? O i dati sono rumorosi?
Hai solo bisogno della prima riga più grande della riga precedente?
C'è un'equazione che genera i dati?
Ri: COME TROVARE MINIMA/MASSIMA IN JMP?Ciao Craig,
Grazie per la risposta. Ho allegato la tabella dei dati (Minima_Jmp) con le colonne X e Y per questo grafico.
Di seguito le mie risposte:
1] I dati sono davvero così fluidi? O i dati sono rumorosi?
Risposta : I dati sono rumorosi, come mostrato nei 2 grafici sottostanti
2] Ti serve solo la prima riga più grande della riga precedente?
Risposta: Questa domanda non mi è molto chiara: troverei il primo punto minimo ed escluderei tutti i dati alla sua sinistra
3] C'è un'equazione che genera i dati?
E: No, non c'è un'equazione per questi dati - Forse possiamo adattare un'equazione per descrivere la curva, ma questa è solo un'approssimazione


Ri: COME TROVARE MINIMA/MASSIMA IN JMP?La tua domanda originale sembra riguardare una spline, adattarsi ai dati rumorosi e trovare il primo minimo di quella spline. Per i dati di esempio, questo sembra funzionare:
dt = Open( "Z:/Minima_JMP.jmp" );
dt << sort( by( x ), replacetable( 1 ) );
obj = dt << Bivariate(
Y( :Y ),
X( :X ),
Fit Spline( 26.8534445, {Line Color( {66, 112, 221} )} ),
Automatic Recalc( 1 ),
SendToReport( Dispatch( {}, "Bivar Plot", FrameBox, {Frame Size( 1653, 240 )} ) )
);
obj << (Curve["Smoothing Spline Fit, lambda=26.8534445"] << Save Predicteds);
For( irow = 2, irow < N Rows( dt ), irow += 1,
If( dt:Spline Predictor for Y[irow] > dt:Spline Predictor for Y[irow - 1],
Write( Eval Insert( "the inflection upward trend begins around row ^irow^" ) );
// choose one of these...
dt << selectrows( 1 :: irow );
// dt<<DELETEROWS>= N Rows( dt ),
Write( "not found?" )
);</DELETEROWS>
The selected points in the graph are also selected rows in the data table; press delete in the table. Or, choose the <<deleterows statement.The selected points in the graph are also selected rows in the data table; press delete in the table. Or, choose the <<deleterows statement.The selected points in the graph are also selected rows in the data table; press delete in the table. Or, choose the <<deleterows statement.The selected points in the graph are also selected rows in the data table; press delete in the table. Or, choose the <<deleterows statement.The selected points in the graph are also selected rows in the data table; press delete in the table. Or, choose the <<deleterows statement.The selected points in the graph are also selected rows in the data table; press delete in the table. Or, choose the <<deleterows statement.The selected points in the graph are also selected rows in the data table; press delete in the table. Or, choose the <<deleterows statement.The selected points in the graph are also selected rows in the data table; press delete in the table. Or, choose the <<deleterows statement.The selected points in the graph are also selected rows in the data table; press delete in the table. Or, choose the <<deleterows statement.The selected points in the graph are also selected rows in the data table; press delete in the table. Or, choose the <<deleterows statement.The selected points in the graph are also selected rows in the data table; press delete in the table. Or, choose the <<deleterows statement.The selected points in the graph are also selected rows in the data table; press delete in the table. Or, choose the <<deleterows statement.The selected points in the graph are also selected rows in the data table; press delete in the table. Or, choose the <<deleterows statement.The selected points in the graph are also selected rows in the data table; press delete in the table. Or, choose the <<deleterows statement.The selected points in the graph are also selected rows in the data table; press delete in the table. Or, choose the <<deleterows statement.I punti selezionati nel grafico sono anche righe selezionate nella tabella dati; premere cancella nella tabella. In alternativa, scegli l'istruzione <
Nel registro: la tendenza al rialzo dell'inflessione inizia intorno alla riga 231
Questo dopo aver ordinato la tabella per X ascendente.
Otterrai risposte diverse regolando la tensione della spline (lambda=...). Assicurati di eliminare la colonna prevista prima di eseguire nuovamente lo script o chiudi la tabella senza salvare.
Questa idea si romperà se la forma effettiva dei dati non corrisponde al tuo esempio; se è già in aumento all'inizio, ecc.
Questo potrebbe non essere il modo corretto di fare ciò di cui hai bisogno; Penso che dovrai spiegare da che tipo di processo provengono i dati e perché vuoi trovare questo punto nei dati per convincere altre persone ad aggiungere alcune idee.
Ri: COME TROVARE MINIMA/MASSIMA IN JMP?Ciao Craig,
Questo sembra meraviglioso. Lo proverò su altre tabelle di dati e controllerò.
C'è un modo per trovare un valore lambda adatto se devo automatizzare questa analisi per più tabelle di dati di dati simili?
Grazie.
Ri: COME TROVARE MINIMA/MASSIMA IN JMP?Non lo so. Penso che sia in parte scienza, in parte arte, specialmente con le spline. Penso che vorrai aggiungere alcuni controlli di integrità al codice se provi ad automatizzarlo senza ispezionare visivamente i risultati. Se è possibile che il tuo processo produca un'oscillazione extra all'inizio, questo fallirà chiaramente. O più dati, o meno dati, o diversamente densi/sparsi nell'intervallo, ecc. Potrebbero cambiare i risultati.
Ci sono persone che potrebbero suggerire altri modelli specifici per processi o settori. Avrebbero bisogno di maggiori informazioni sui dati.