Simulazione Monte Carlo per una piattaforma di analisi (regressione graduale).Ho un'analisi che utilizza diverse colonne che contengono elementi casuali.So come aggiornare manualmente i numeri casuali che si trovano nelle colonne e capisco come condurre una simulazione per l'output di un'analisi.Ma in questo caso, voglio eseguire una regressione graduale ogni volta che vengono aggiornati i numeri casuali nelle colonne.Voglio farlo almeno 1000 volte.Non so come automatizzare questo processo: generare nuovi numeri casuali nelle colonne delle formule, eseguire nuovamente la piattaforma di regressione graduale, eseguire il modello scelto e raccogliere i risultati.
AnaliticaRe: Simulazione Monte Carlo per una piattaforma di analisi (regressione graduale).Consentitemi di essere più specifico nel caso in cui qualcuno dei generosi sceneggiatori là fuori possa aiutare.Ho allegato una versione più piccola di quello che sto cercando di fare.Ho 10 colonne (tutte che iniziano con la colonna 2) nel file allegato che implica una distribuzione normale casuale e la prima colonna Y, che utilizza 5 colonne etichettate come parametro da 1 a 5 e una distribuzione normale casuale nella formula.Desidero eseguire i seguenti passaggi:
1. Eseguire la regressione graduale archiviata nel file.Non è necessario creare o eseguire il modello, è sufficiente eseguire il pulsante Vai che esegue la procedura graduale dopo Esegui dalla piattaforma Fit Model.
2. Registrare la frequenza con cui ciascuna delle 10 colonne che iniziano con la Colonna 2 viene selezionata mediante la procedura graduale. (Non so come scrivere uno script per raccogliere quelle informazioni particolari)
3. Eseguire nuovamente la formula per le 5 colonne dei parametri in modo che contengano un nuovo set di valori simulati.So che questo può essere fatto con il comando Rerun formula che si trova nella freccia rossa in alto a sinistra della tabella (ma non so come scriverlo).
4. Ripetere i passaggi 1 e 2. (Credo che questo possa essere fatto tramite un semplice ciclo)
5. Eseguire questa operazione 1000 volte e mostrare le distribuzioni per il numero di volte in cui ciascuna delle 10 colonne della Colonna 2 è stata selezionata nella procedura graduale.
Credo che tutto questo possa essere sceneggiato, ma è ben al di là di qualsiasi cosa io sia in grado di fare.Se qualcuno può essere di aiuto, lo apprezzerei.Sono disposto a collaborare con qualcuno come coautore di un articolo poiché ho in mente uno sfogo per questo.
Re: Simulazione Monte Carlo per una piattaforma di analisi (regressione graduale).Per lo più ho risolto il mio problema, ma ho ancora una domanda.In allegato è un piccolo script che esegue la regressione graduale come voglio.Ma per generare 1000 campioni, dovevo creare una colonna "campione" e utilizzarla come variabile "Per" nell'analisi.Funziona, ma è un modo ingombrante per eseguire la simulazione, dal momento che ho bisogno di rendere il file molto lungo, ad esempio, per 1000 campioni di 1000 osservazioni ciascuno, ho bisogno di 1.000.000 di righe.Qualcuno conosce un modo più efficiente per condurre una simulazione?Per quanto ne so, l'opzione "simula" che accompagna molte piattaforme JMP può solo simulare determinati risultati di analisi ma non l'analisi stessa.
Re: Simulazione Monte Carlo per una piattaforma di analisi (regressione graduale).Quello che hai esposto nel post precedente è un buon piano. Lo farei anch'io. Proverò a dare alcuni consigli.
- Se non conosci lo scripting in JMP, un punto di partenza è Guida agli script . Alcuni pezzi importanti, in questo compito specifico, potrebbero essere:
- Oltre a ciò, devi avere familiarità con Scripting Index nel menu Guida. Esistono 3 gruppi di oggetti di scripting: Funzioni, Oggetti e Caselle di visualizzazione. C'è una casella combinata in alto a sinistra e puoi restringere il campo a un gruppo specifico.
- Per questa attività specifica, potrebbe essere necessario controllare il gruppo Oggetti. Tutte le piattaforme, inclusa la tabella dati, sono elencate qui. Potresti voler controllare l'elemento "Adatta per gradi" sotto l'oggetto "Adatta modello". Fai clic su "Adatta per gradi" e guarda a destra per un messaggio "Fine" tra i "Messaggi oggetto". Questo potrebbe essere il pezzo chiave mancante per te ora.
- Per questa attività specifica, devi anche imparare a manipolare le tabelle di dati. La concatenazione, in particolare, forse. Vai all'elenco Oggetti, fai clic su "Tabella dati" e cerca a destra "Concatena" tra i messaggi di elemento.
Oltre a quanto sopra, ecco altri suggerimenti utili che ho imparato dai miei colleghi.
- Posta domande più piccole e specifiche al forum di discussione, quando possibile. Sarà più probabile che generi aiuto.
- Preferisci gli screenshot agli allegati. Per i codici JSL, puoi inserirli direttamente nel post, in modo che i lettori possano vederli. Cerca il pulsante nella barra degli strumenti quando modifichi un post. Sarà anche più probabile che generi aiuto. Ad esempio, è improbabile che un lettore su un dispositivo mobile apra un allegato.

Re: Simulazione Monte Carlo per una piattaforma di analisi (regressione graduale).Ciao dale_lehman
La mia idea è ottenere e salvare il risultato dalla piattaforma "stepwise" nella cartella. Quindi ' Importazione di file multipli ' intero risultato come un file.
Alla fine, remi pulito da ' Valore P' e distribuisci come vuoi.Dettagli JSL come di seguito:
Clear Globals();
Clear Log();
Names Default To Here( 1 );
//Define path in and out
Path_in = Pick File( "Select file" );
If( Directory Exists( "$Desktop\Fit_Stepwise" ),
,
Create Directory( "$Desktop\Fit_Stepwise" )
);
Path_out = "$Desktop\Fit_Stepwise\";
//Run Fit model and stepwise after open datatable
dt = Open( Path_in );
For( i = 1, i <= 1000, i++,
ow = dt << Fit Model(
Y( :Y ),
Effects(
:Column 2 001,
:Column 2 002,
:Column 2 003,
:Column 2 004,
:Column 2 005,
:Column 2 006,
:Column 2 007,
:Column 2 008,
:Column 2 009,
:Column 2 010
),
Personality( "Stepwise" ),
Run,
SendToReport( Dispatch( {}, "Step History", OutlineBox, {Close( 1 )} ) )
);
dt_result = Report( ow )[Outline Box( "Stepwise Fit for Y" )][Outline Box( "Current Estimates" )][Table Box( 1 )] << Make Into Data Table;
dt_result << save( Path_out || Char( i ) || ".csv", "csv" );
ow << close window;
dt_result << Close Window;
);
dt << Close Window;
dt_result = Multiple File Import(
<<SET folder="">F\!"" ) > 0.05 ) ) << Delete Rows;
dt_result << Distribution( Stack( 1 ), Nominal Distribution( Column( :Parameter ), Horizontal Layout( 1 ), Vertical( 0 ) ) );</SET>