Home Forum Statistica con R ripetizione codice

Questo argomento contiene 2 risposte, ha 2 partecipanti, ed è stato aggiornato da  Sami 1 settimana fa.

Stai vedendo 3 articoli - dal 1 a 3 (di 3 totali)
  • Autore
    Articoli
  • #6549

    Sami
    Partecipante

    Salve,
    avrei bisogno di un aiuto per quanto riguarda la ripetizione di questo codice.
    sigma<- 0.2
    media<- 0.1
    S0=100
    campione0<- rnorm(10, mean = media*(1/365), sd = sigma*(1/365))
    S1=S0+cam0
    S1
    campione1<- rnorm(10, mean = media*(1/365), sd = sigma*(1/365))
    S2=S1+campione1
    S2
    campione2<- rnorm(10, mean = media*(1/365), sd = sigma*(1/365))
    S3=S2+campione2
    S3
    ……..
    S200=S199+campione199
    partendo da un valore iniziale di S e creando un campione con rnorm, dovrò ottenere un nuovo vettore di S sommando il valore iniziale ovvero 100 ai valori ottenuti dal campione applicando rnorm.
    una volta fatto il mio nuovo valore di partenza non sarà più S0 ma sarà S1 ovvero il vettore che ho ottenuto dal passaggio precedente. devo ripetere il passaggio di prima ottenendo dei nuovi valori del campione sempre applicando rnorm che poi andrò a sommare a S1 al fine di ottenere S2.
    in sostanza l’iterazione che devo fare è sempre questa solo che devo ripetere il ciclo 200 volte. come potrei risolverlo?
    spero di essermi spiegata decentemente.
    Ringrazio anticipatamente per l’aiuto.

    grazie a tutti
    Sami

    #6550

    pdeninis
    Partecipante
    sigma<- 0.2
    media<- 0.1
    N=201
    S<-matrix(NA,201,10)
    S[1,1:10]<-100+rnorm(10, mean = media*(1/365), sd = sigma*(1/365))
    for (i in 2:N) {
    campione<- rnorm(10, mean = media*(1/365), sd = sigma*(1/365))
    S[i,1:10]<-S[i-1,1:10]+campione
    }
    S<-S[2:201,]
    

    Prova così.

    • Questa risposta è stata modificata 1 settimana, 1 giorno fa da  pdeninis.
    #6552

    Sami
    Partecipante

    grazie mille davvero mi hai aiutata tantissimo.
    buona giornata

Stai vedendo 3 articoli - dal 1 a 3 (di 3 totali)

Devi essere loggato per rispondere a questa discussione.