ho bisogno di aiuto con lo script jsl: sto cercando di rimuovere righe casuali per il test di convalida del modello e di utilizzare il resto delle righe per la creazione del modelloCiao, sto cercando di adattare un'equazione di regressione utilizzando un 80% casuale di dati e, utilizzando l'equazione modellata risultante, eseguire il restante 20% di dati attraverso il modello e salvare i risultati osservati rispetto a quelli modellati di quel 20%. In altre parole, il 20% di righe viene utilizzato per la convalida.
Il mio set di dati ha 227 righe. Voglio addestrare (ovvero sviluppare un'equazione di regressione) utilizzando l'80% di queste, dopodiché tale equazione di regressione verrebbe eseguita sul restante 20% di righe per calcolare osservato rispetto a modellato per quel 20% di righe.
Il mio script non funziona correttamente: esclude correttamente il 20% delle righe, ma poi esegue il 100% delle righe e le salva. Mostro il codice qui sotto, ma ho rimosso la parte che calcola varie metriche sui risultati osservati rispetto a quelli modellati.
Ogni aiuto sarà molto apprezzato! (Sto utilizzando JMP Pro 17.0)
dt = Open("C:\Users\trcampbell\Desktop\MASTER ECOLI\2025\2024.xlsx");
Random_rows = dt << Select Randomly(0.2) << Hide and Exclude();
New Column("Excluded", Numeric, ordinal);
:Excluded << Set Formula(If(Excluded(), 1, 0));
dt << Sort(By(:Excluded), Replace Table, Order(Descending), Copy formula(0));
/////////////......LOG ECOLI VS LOG TURB....LINEAR FIT....../////////////////////
obj = Fit Model(
Y(:LOGECOLI),
Effects(:LOGTURB),
Personality("Standard Least Squares"),
Emphasis("Effect Leverage"),
Run(:LOGECOLI)
);
obj << Prediction Formula;
ref = obj <<
dt << save(
"C:\Users\trcampbell\Desktop\MASTER ECOLI\2025\validation results\test xxxxx1 with 126 and 886.xls"
);Automazione e scriptingAnalisi e modellazione dei dati di baseRe: ho bisogno di aiuto con lo script jsl - sto cercando di rimuovere righe casuali per il test di convalida del modello e di utilizzare il resto delle righe per la creazione del modelloPoiché hai JMP Pro, prenderei in considerazione l'utilizzo della colonna di convalida

Re: ho bisogno di aiuto con lo script jsl - sto cercando di rimuovere righe casuali per il test di convalida del modello e di utilizzare il resto delle righe per la creazione del modelloStai utilizzando JMP Pro. Sei a conoscenza del supporto integrato per la selezione del modello tramite training, validation e test hold-out set?
Re: ho bisogno di aiuto con lo script jsl - sto cercando di rimuovere righe casuali per il test di convalida del modello e di utilizzare il resto delle righe per la creazione del modelloHo eseguito il tuo JSL su JMP 17, utilizzando la tabella dati di esempio Semiconductor Capability. Lo script ha selezionato 291 righe del numero totale di 1455 righe. Le 291 righe selezionate sono state nascoste ed escluse.
Ha quindi eseguito il modello di adattamento e i risultati del modello di adattamento si basavano solo sulle righe non escluse.

La formula di previsione salvata calcola i valori previsti per tutte le righe. Non discrimina in base alle righe selezionate/escluse rispetto a quelle non selezionate/escluse.
Questa potrebbe essere la fonte del problema riscontrato.
Re: ho bisogno di aiuto con lo script jsl - sto cercando di rimuovere righe casuali per il test di convalida del modello e di utilizzare il resto delle righe per la creazione del modelloGrazie, Jim. C'è un modo per rivedere lo script per salvare solo il 20% (set di convalida) delle righe?
Re: ho bisogno di aiuto con lo script jsl - sto cercando di rimuovere righe casuali per il test di convalida del modello e di utilizzare il resto delle righe per la creazione del modelloCi sono diversi modi per farlo.
- Invece di usare Select Randomly, potresti usare Subset e fargli creare un campione casuale all'80%. Quindi esegui il tuo Fit Model e salva la tabella sottoposta a subset.
- In alternativa, dopo aver eseguito lo script, quindi sottoporre la tabella in base alla colonna Esclusa e quindi salvare la tabella sottoposta a sottomissione prodotta
Re: ho bisogno di aiuto con lo script jsl - sto cercando di rimuovere righe casuali per il test di convalida del modello e di utilizzare il resto delle righe per la creazione del modelloGrazie. Ho appena usato questo codice qui sotto nella riga appena prima di salvare il file. Immagino che sia corretto (ovvero, utilizza ancora la formula che è stata ottenuta dall'80% delle righe di training).
dt<< Elimina righe(dt << ottieni righe Dove( :Escluso == 0 ));
dt<< Save("C:\\Utenti\\trcampbell\\Desktop\\MASTER ECOLI\\2025\\risultati della convalida\\righe escluse.xlsx");
Re: ho bisogno di aiuto con lo script jsl - sto cercando di rimuovere righe casuali per il test di convalida del modello e di utilizzare il resto delle righe per la creazione del modelloGrazie jthi!
Re: ho bisogno di aiuto con lo script jsl - sto cercando di rimuovere righe casuali per il test di convalida del modello e di utilizzare il resto delle righe per la creazione del modelloSì, grazie mille.