Tracciare la regressione non lineare utilizzando GraphBuilder e/o Analyze (con script)Questo post è simile a questo , e ho pubblicato un commento lì, ma poiché il post ha 2 anni potrebbe non essere visto e ho problemi ad adattare le soluzioni alla mia equazione.
Sto eseguendo la regressione non lineare utilizzando lo script seguente per preparare i dati e quindi utilizzando l'opzione Analizza con Fluorescenza normalizzata come valore Y e la colonna Modello (formula) come valore X (invertendo l'asse) e per Well Position, ma questo fa solo uno alla volta. Se utilizzo GraphBuilder, non riesco a far sì che Smoother utilizzi la formula . Mi piacerebbe avere tutti i grafici su un grafico OPPURE in un mondo di unicorni assolutamente ideale, rappresentare graficamente 3 posizioni alla volta (es. B2-B4) ma sembra irrealistico: p
Data Table( "Melt Curve Raw Data" ) << New Column( "Normalized Fluorescence",
formula(
(:Fluorescence - Col Min( :Fluorescence, :Well Position )) / (
Col Max( :Fluorescence, :Well Position )
-Col Min( :Fluorescence, :Well Position ))
)
);
Data Table( "Melt Curve Raw Data" ) << New Column( "Model", Numeric,
"Continuous", Format( "Best", 12 ),
Formula(Parameter({m1 = -60, m2 = 0.2, m3 = -50, m4 = -0.3, m5 = 100000, m6 = 320},
((m1 + m2 * (:Temperature + 273)) + (m3 + m4 * (:Temperature + 273)) * Exp((-m5 / (1.987 *
(:Temperature + 273))) * (1 - (:Temperature + 273) / m6))) /
(1 + Exp((-m5 / (1.987 * (:Temperature + 273))) * (1 - (:Temperature + 273) / m6))))));
Modellazione statistica avanzataOggetto: tracciare una regressione non lineare utilizzando GraphBuilder e/o Analyze (con script)Non hai frainteso. La complessità risultante creerà probabilmente un limite pratico che impedisce la convergenza.
Oggetto: tracciare una regressione non lineare utilizzando GraphBuilder e/o Analyze (con script)Grazie per aver chiarito le istruzioni.Sembra che nel tuo esempio tu abbia dovuto digitare tutte le diverse età possibili, è corretto?Sto usando piastre da 96 pozzetti, quindi di solito ho ~ 45 pozzetti, ma posso averne fino a 96. Dovrei quindi fare 45 parametri per tutte e 6 le variabili (m1-m6)? Sto pensando di aver seriamente frainteso qualcosa...
Nell'altro tuo commento hai chiesto cosa farò con questo, ed è principalmente correlato a un confronto tra il cambiamento di entalpia (m5) e la temperatura di fusione (m6) per due proteine dopo diversi trattamenti.
Oggetto: tracciare una regressione non lineare utilizzando GraphBuilder e/o Analyze (con script)Lascia che ti mostri come funziona FDE e cosa potrebbe essere in grado di fare per te. Non hai ancora dichiarato cosa vuoi fare alla fine con le curve adattate. Ad esempio, come sono ben determinate le condizioni in ciascuno di essi? Vuoi confrontare le curve in termini di condizione di ciascun pozzo.
Ho aperto la tabella dei dati e selezionato Analizza > Modellazione specializzata > Esplora dati funzionali. Ho lanciato colonne di dati nei seguenti ruoli:

La piattaforma iniziale mostra i dati in una sovrapposizione e singole funzioni (curve). Ho fatto clic sul triangolo rosso in alto e ho selezionato Modelli > B Spline.

Le informazioni importanti sono la funzione media, la funzione di deviazione standard e le componenti principali funzionali. Questi FPC catturano l'unicità di ciascuna curva rispetto alla funzione media. Forniscono informazioni sulle tue curve e sulle loro differenze. Il numero di FPC è uguale al numero di curve, ma di solito puoi ignorarne la maggior parte. I primi tre FPC acquisiscono il 99,1% delle informazioni in tutte le curve.
Puoi pensare agli FPC come agli archetipi delle tue curve. Cioè, sono le caratteristiche essenziali che possono essere combinate per produrre una delle curve. È possibile utilizzare gli FPC come risposta o come fattore. In altre parole, potresti chiederti in che modo i livelli dei fattori che cambiano attraverso i pozzi determinano la forma della curva? O come fa la forma di una curva a prevedere qualche altro risultato?

JMP visualizza arbitrariamente tutti gli FPC con almeno l'1% di contributo inizialmente, quindi in questo caso ci sono 5 FPC. Ho ridotto il numero a 3 e salvato i riepiloghi funzionali, che includono le formule per la risposta 'condizionale'. Ora posso fare tutto quello che voglio con gli FPC, sono solo dati. Posso tracciarli in Graph Builder.

Ho salvato gli script nella tabella dei dati originale e in quella con i riepiloghi funzionali e ho allegato le nuove tabelle dei dati di seguito.
Oggetto: tracciare una regressione non lineare utilizzando GraphBuilder e/o Analyze (con script)Non hai utilizzato correttamente questa funzione. Il paragrafo in Help è corretto, ma forse un po' ambiguo. Ecco il modo corretto, passo dopo passo. Sto usando Big Class per adattare un semplice modello esponenziale per :weight contro :height con :age come variabile di raggruppamento (:weight = A*Exp( B*height ) ).
Aggiungere una nuova colonna di dati per il modello. Aggiungi una formula per il modello alla colonna di dati. Definire i parametri.

Fare clic su OK e selezionare la variabile di raggruppamento.

Ripetere questo passaggio per gli altri parametri che non sono comuni a tutte le curve. Costruisci il modello. Selezionare i parametri secondo necessità. Ecco il modello esponenziale raggruppato.

Salva la formula e avvia Non lineare.

Fare clic su OK per iniziare l'adattamento.

Temo, tuttavia, che la parametrizzazione nel tuo modello comporterà un'elevata correlazione tra le stime. Questa correlazione sarà esacerbata dall'introduzione della variabile di raggruppamento, soprattutto in considerazione del numero di gruppi. Quindi un'alternativa è utilizzare il modello originale e utilizzare l'ID curva nel ruolo By. In questo modo ti permetterà di adattare ogni curva da sola.
D'altra parte, se non sei legato a questo modello, allora l'FDE è un'altra strada. Utilizza un'espansione delle funzioni di base per modellare i dati. Questi sono interpolatori generici.

Oggetto: tracciare una regressione non lineare utilizzando GraphBuilder e/o Analyze (con script)Ciao Mark!
Grazie mille per aver risposto.Sì, ho JMP Pro ma non ho provato Functional Data Explorer. Proverò a leggerlo oggi. Grazie per il suggerimento.
Ho visto il paragrafo a cui ti sei collegato sull'utilizzo della casella di controllo "Espandi in categorie". L'ho aggiunto come settimo parametro e nella pagina Analizza ha rappresentato graficamente tutto su un grafico (fantastico!), ma mi ha dato solo valori per una riga. Ho utilizzato l'opzione Espandi in categorie in modo errato? Avrei dovuto aggiungerlo a uno dei miei 6 parametri originali?
Oggetto: tracciare una regressione non lineare utilizzando GraphBuilder e/o Analyze (con script)La finestra di dialogo di avvio non lineare semplifica eccessivamente la situazione. È necessario fare di più sul modello personalizzato per indicare in che modo la variabile Group influisce sui parametri. Il tuo modello include solo parametri comuni. I parametri univoci dipendono dai livelli della variabile Gruppo.
Perfavore guarda questa pagina e la nota in fondo.
Hai JMP Pro? Hai provato il Functional Data Explorer?
Oggetto: tracciare una regressione non lineare utilizzando GraphBuilder e/o Analyze (con script)Wow quelli sono tutti fantastici. Quello che stavo cercando originariamente era il grafico a dispersione multicolore nell'angolo in alto a destra, ma sono assolutamente sbalordito dai grafici e dallo script che hai creato.
Quando utilizzo l'opzione Analizza, ottengo i valori di cui ho bisogno ma ogni grafico è separato. Ho allegato schermate delle impostazioni che sto attualmente utilizzando insieme ai risultati dopo aver fatto clic su "vai", quindi su "limiti di confidenza".
Ho anche allegato il messaggio di errore che ricevo quando provo a usare "group" invece di "by" per Well Position.



Oggetto: tracciare una regressione non lineare utilizzando GraphBuilder e/o Analyze (con script)Non riesco a dirti esattamente cosa stai cercando, per caso uno di questi grafici mostra quello che stai cercando o puoi pubblicare uno screenshot del grafico che ne fa solo uno alla volta?Hai detto di aver utilizzato Analizza, ma non sono sicuro di quale opzione in quel menu hai scelto.



Graph Builder(
Size( 671, 507 ),
Show Control Panel( 0 ),
Variables(
X( :Model ),
Y( :Normalized Fluorescence ),
Overlay( :Well Position )
),
Elements( Smoother( X, Y, Legend( 12 ) ), Points( X, Y, Legend( 13 ) ) ),
Local Data Filter(
Add Filter(
columns( :Well Position ),
Where( :Well Position == {"B2", "B3", "B4"} ),
Display( :Well Position, N Items( 15 ), Find( Set Text( "" ) ) )
)
)
);
Graph Builder(
Size( 671, 543 ),
Show Control Panel( 0 ),
Variables( X( :Model ), Y( :Normalized Fluorescence ), Wrap( :Well Position ) ),
Elements( Points( X, Y, Legend( 9 ) ), Smoother( X, Y, Legend( 11 ) ) ),
Local Data Filter(
Add Filter(
columns( :Well Position ),
Where( :Well Position == {"B2", "B3", "B4"} ),
Display( :Well Position, N Items( 15 ), Find( Set Text( "" ) ) )
)
)
);
Graph Builder(
Size( 1308, 384 ),
Show Control Panel( 0 ),
Variables(
X( :Model ),
Y( :Normalized Fluorescence ),
Group X( :Well Position )
),
Elements( Smoother( X, Y, Legend( 12 ) ) ),
Local Data Filter(
Add Filter(
columns( :Well Position ),
Where( :Well Position == {"B2", "B3", "B4"} ),
Display( :Well Position, N Items( 15 ), Find( Set Text( "" ) ) )
)
)
);