
Cerco di calcolare l'estremità di questa curva (vedi disegno). La curva stessa posso modellarla con una curva sigmoide. C'è un modo per farlo automaticamente? L'unica cosa che riesco a trovare è il punto di flesso, ma non è quello che mi serve.
Ciao @Marjoleine ,
Personalmente non conosco la definizione di endset, ma sembra che sia il valore di X in cui la pendenza lineare della curva sigmoide interseca l'asintoto. Se così fosse, non credo che JMP possa eseguirlo automaticamente.
Tuttavia, per vostra informazione, nella piattaforma di adattamento della curva, dopo aver adattato la curva sigmoide, potete cliccare sul pulsante rosso accanto al nome della sigmoide (Gompertz o Logistica, ecc.) e selezionare Previsione inversa personalizzata. In questo modo, inserite diversi valori Y e JMP utilizzerà la funzione sigmoide per eseguire il calcolo inverso e determinare il valore X in corrispondenza del quale si verifica tale valore Y. Questo potrebbe non essere ciò che desiderate, ma potrebbe rivelarsi utile per altre applicazioni future.
Detto questo, puoi scrivere una soluzione al tuo problema che lo faccia "automaticamente", ma ci sono diversi passaggi da seguire. Innanzitutto, ti consiglio di dare un'occhiata a questa serie di post molto utili di @JerryFish che parlano dell'adattamento a tratti di dati non lineari, qui . Potrebbe esserti molto utile se devi farlo spesso e l'automazione ti semplificherebbe la vita.
Se si tratta di un'operazione una tantum, è possibile eseguirla manualmente seguendo i passaggi seguenti (è possibile anche automatizzarla con JSL).
- Per prima cosa seleziona i punti dati che NON sono necessari per l'approssimazione lineare della curva sigmoide: in pratica, stai adattando una linea al punto di flesso alla pendenza della sigmoide ignorando gli estremi asintotici.
- Crea una nuova colonna e assegnale una Formula: la formula da digitare sarà simile a m*X+b.
- m è un parametro che devi definire nella finestra della formula e a cui devi assegnare un valore iniziale.
- X è la colonna del regressore X utilizzata per adattare la curva sigmoide.
- b è un parametro che devi definire nella finestra della formula e a cui devi assegnare un valore iniziale.
- Ritornare alla piattaforma di adattamento non lineare e utilizzare questa nuova formula per colonne come formula del regressore/predittore X.
- Assegna la colonna Y al ruolo Y e fai clic su OK, quindi fai clic su Vai nella finestra del nuovo report.
Questo dovrebbe generare un buon adattamento lineare attraverso i punti dati, che esclude le parti asintotiche della curva. In fondo al report, vedrai i valori dei parametri per m e b, e potrai usarli per calcolare a ritroso il valore di X nell'asintoto di Y.
Di seguito è riportato uno screenshot di un esempio che ho eseguito. In questo caso, il mio asintoto Y è 100, m = -0,255, b = 162,99, quindi (100-162,99)/(-0,255) = 247. Quindi, nel mio esempio, il mio endset è 247. Ovviamente, puoi scrivere tutto in JSL in modo che restituisca il tuo endset non appena clicchi su "Go" nel tuo programma, ma questo potrebbe essere più di quello che ti serve. Di nuovo, se devi farlo decine o centinaia di volte, potrebbe valere la pena scrivere il codice che lo faccia per te.
Spero che questo aiuti!
DS

Grazie. L'endset è effettivamente il punto di intersezione del coefficiente angolare con l'asintoto. Proverò a scrivere uno script con il tuo suggerimento perché devo farlo almeno 100 volte.
Marjoleine