esperimento di simulazioneVoglio fare un esperimento di simulazione, generare 12 variabili casuali, ciascuna variabile contiene 100 osservazioni, in modo che le variabili siano soggette al problema dell'eterogeneità e seguano la distribuzione normale
L'esperimento viene ripetuto 10.000 volte.
# Non so come farlo con JMPpro
Grazie
Modellazione statistica avanzatafinestreRe: esperimento di simulazione"come rendere le variabili eterogenee nella varianza" - significa che ogni colonna necessita di un sigma diverso? Hai bisogno di 12 valori sigma scelti casualmente?
"Problema di eteroschedasticità" - significa che hai in mente una funzione per cambiare il sigma in base a mu? E una funzione per scegliere mu, probabilmente in modo casuale? (Non ho alcuna esperienza qui, sto solo indovinando dopo una lettura di 30 secondi.)
Penso che vorrai farlo usando i cicli for nidificati. Il mio suggerimento originale è troppo semplice. Potresti anche utilizzare formule di colonna, ma uno script JSL sarà più semplice da gestire. I cicli annidati assomiglierebbero a questo
m = J( 100 * 10000, 12, 0 );
for(row=1, row<=nrows(m), row+=1,
for(col=1, col<=ncols(m), col+=1,
m[row,col] = HSD(row,col);
);
);<BR /><BR />dt = astable(m)<BR /><BR />...
Devi scrivere la funzione scritta dall'utente "HSD" con ciò che desideri effettivamente.
Potresti anche voler modificare le 10000 ripetizioni in 2 o 3 ripetizioni finché non decidi cosa dovrebbe fare l'analisi. Ho utilizzato il riepilogo perché racchiude tutte le analisi da 10.000 in una tabella dati. Potresti voler eseguire una piattaforma 10K volte, acquisire alcuni risultati, quindi chiudere la piattaforma. Non vuoi che 10.000 piattaforme siano aperte contemporaneamente perché JMP esaurirà la memoria.
Re: esperimento di simulazionecaro Signore
Innanzitutto, grazie mille per l'aiuto.
In effetti, il tuo script qui sopra si avvicina a quello che voglio,
ma non so come rendere le variabili eterogenee nella varianza.
Non so come modificare il tuo script, in modo tale che:
Numero di variabili casuali = 12
Il numero di osservazioni in ciascuna variabile = 100
E che le variabili risultanti soffrono del problema dell’eteroschedasticità
Con possibilità di ripetere l'esperimento 10.000 volte
Saluti
Re: esperimento di simulazionedai un'occhiata a una ricerca come questa https://www.google.com/search?q=site%3Ajmp.com+Eteroschedasticità per trovare domande precedenti che potrebbero avere buone risposte nella comunità. Nella GUI di ricerca di Google puoi farlo con sito:jmp.com per limitare i risultati:
site:jmp.com Heteroscedasticitysite:jmp.com Heteroscedasticitysito:jmp.com Eteroschedasticità
Non sono uno statistico. I dati sopra sono casuali. La fonte a cui indichi suggerisce che i dati dovrebbero avere una sorta di ripetizione attraverso le stagioni... non del tutto casuali. Se 1..12 rappresenta i mesi dell'anno, potrebbe non avere senso avere una colonna di gennaio, una di febbraio, ... Potrebbe avere molto più senso avere una colonna di data e una colonna di valore.
| data |
valore |
| 2020/01 |
7 |
| 2020/02 |
6 |
| 2020/03 |
8 |
Ho cercato Eteroschedasticità e sospetta che avrai bisogno di un approccio diverso per generare i tuoi numeri casuali in modo che mostrino effettivamente quella caratteristica. Altrimenti è solo casuale, senza nulla di interessante, ma mu e sigma sono passati alla normalità casuale, come mostrato nel grafico sopra.
Sto solo indovinando, e sono fuori strada... Penso che dovresti generare un mu casuale (normale? uniforme?) e un sigma basato su quel mu, e quindi usare RandomNormal(mu,sigma). Oppure potrei sbagliarmi completamente.
Re: esperimento di simulazione
la fonte:
Autoregressione periodica con coefficiente casuale (repec.org)
Re: esperimento di simulazionecaro Signore Craige_Hales
Grazie mille per avermi aiutato,
Volevo fare un esperimento di simulazione:
Numero di variabili casuali = 12
Il numero di osservazioni in ciascuna variabile = 100
E che le variabili risultanti soffrono del problema dell’eteroschedasticità
# Con possibilità di ripetere l'esperimento 10.000 volte
Re: esperimento di simulazioneIl riassunto potrebbe essere un buon inizio
</CODE></P>
<PRE><CODE class=" language-jsl">dt = As Table( J( 100 * 10000, 12, Random Normal( 0, 1 ) ) );
dt << New Column( "group", formula( Floor( (Row() - 1) / 100 ) + 1 ) );
dt << runformulas;
dt:group << deleteformula;
dt << Go To( group );
dt << Move Selected Columns( To first );
dtsummary = dt << Summary(
Group( :group ),
Mean( :Col1 ),
Min( :Col1 ),
Max( :Col1 ),
Std Dev( :Col1 ),
Mean( :Col2 ),
Min( :Col2 ),
Max( :Col2 ),
Std Dev( :Col2 ),
Freq( "None" ),
Weight( "None" )
);
dtsummary << Graph Builder(
Size( 653, 452 ),
Show Control Panel( 0 ),
Variables(
X( :group ),
Y( :"Mean(Col1)"n ),
Y( :"Min(Col1)"n, Position( 1 ) ),
Y( :"Max(Col1)"n, Position( 1 ) ),
Y( :"Std Dev(Col1)"n, Position( 1 ) ),
Y( :"Mean(Col2)"n, Position( 1 ) ),
Y( :"Min(Col2)"n, Position( 1 ) ),
Y( :"Max(Col2)"n, Position( 1 ) ),
Y( :"Std Dev(Col2)"n, Position( 1 ) )
),
Elements(
Points(
X,
Y( 1 ),
Y( 2 ),
Y( 3 ),
Y( 4 ),
Y( 5 ),
Y( 6 ),
Y( 7 ),
Y( 8 ),
Legend( 7 )
)
)
);
</CODE></P>
<P><SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Color!" style="width: 812px;"><SPAN class="lia-inline-image-display-wrapper" image-alt="Color!" style="width: 812px;"><span class="lia-inline-image-display-wrapper" image-alt="Color!" style="width: 812px;"><img src="https://us.v-cdn.net/6038925/uploads/images/41991iFA52067AFA73F318/Untitled%204%20By%20%28group%29%20-%20Graph%20Builder.png" role="button" title="Untitled 4 By (group) - Graph Builder.png" alt="Color!" /><span class="lia-inline-image-caption" onclick="event.preventDefault();">Color!</span></span><SPAN class="lia-inline-image-caption" onclick="event.preventDefault();">Color!</SPAN></SPAN><SPAN class="lia-inline-image-caption" onclick="event.preventDefault();">Colore!</SPAN></SPAN></P></LINGO-BODY><LINGO-SUB id="lingo-sub-481697" slang="en-US" mode="NONE">Re: esperimento di simulazione</LINGO-SUB><LINGO-BODY id="lingo-body-481697" slang="en-US" mode="NONE"><P>Non so quale sia il problema dell'eterogeneità, ma il resto potrebbe assomigliare a questo:</P>
<P> </P>
<PRE><CODE class=" language-jsl">dt = As Table( J( 100 * 10000, 12, Random Normal( 0, 1 ) ) );
dt << New Column( "group", formula( Floor( (Row() - 1) / 100 ) + 1 ) );
dt << runformulas;
dt:group << deleteformula;
dt << Go To( group );
dt << Move Selected Columns( To first );
Fai la tua analisi con la variabile del gruppo.
12 million random normal numbers12 million random normal numbers12 milioni di numeri normali casuali