2010-09-07 11 views

risposta

10

Se si vuole calcolare il valore atteso, basta calcolare:

E (X) = integrale di xf (x) dx su tutto il dominio di X.

usando

L'integrazione può facilmente essere fatto la funzione integra().

dici che stai avendo una normale funzione di densità (è possibile definire facilmente il proprio funzione di densità):

f <- function(x){ 
    1/sqrt(2*pi)*exp((-1/2)*x^2) 
} 

si calcola il valore atteso semplicemente:

f2 <- function(x){x*f(x)} 
integrate(f2,-Inf,Inf) 

Prestare attenzione, a volte devi usare Vectorize() per la tua funzione. Questo è necessario per integrarsi al lavoro. Per maggiori informazioni, consultare le pagine della guida di integrate() e Vectorize().

+0

Perché è necessario 'Vectorize'? 'f2' è già una funzione vettoriale. O mi sono perso qualcosa? – Marek

+1

In questo caso, lo è. Volevo solo segnalare l'errore evidente quando si utilizza l'integrazione. L'ho visto molte volte prima. Correggerò –

2

Aiuta a sapere che l'aspettativa E è l'integrale di x*f(x) dx per x in (-inf, inf)?

Problemi correlati