2 votos

Expectativas conjuntas en Python o R

$X$ y $Y$ se distribuyen normalmente como $N(0,1)$ con un coeficiente de correlación de $p$ .

¿Hay alguna manera de encontrar la expectativa de $f(x)*g(y)$ - Deja $f(x)$ sea una función de $x$ que es Integrable y Diferenciable

$E[f(x)*g(y)]$ ? Dónde $g(y) = 1$ si $y>c$ . $g(y) = 0$ de lo contrario

¿Hay alguna forma de hacer esto en Python? ¿O en algún otro lenguaje como R?

Soy consciente de la multivariate_normal() función bajo scipy.stats .

import scipy.stats as st

a = st.multivariate_normal()

¿Hay alguna forma de utilizarlo combinado con algún otro método?

Sería estupendo si alguien pudiera ayudarme también con una solución analítica. Por ejemplo podemos tomar $$ f(x) = exp(x)$$

2voto

RossC Puntos 3725

Se puede aproximar fácilmente el valor esperado de $f(X)g(Y)$ mediante simulación. Por ejemplo, aquí está el código R para simular el valor esperado de $X^2e^Y$ con $\rho = 0.2$ utilizando 1 millón de muestras:

# Parameters for calculation
f <- function(x) x^2
g <- function(y) exp(y)
rho <- 0.2

# Approximate expectation
library(mvtnorm)
set.seed(144)
simulated <- rmvnorm(1e6, c(0, 0), rbind(c(1, rho), c(rho, 1)))
mean(f(simulated[,1]) * g(simulated[,2]))
# [1] 1.713411

Un código similar puede aproximarse a la expectativa en python:

import numpy as np
np.random.seed(144)
simulated = np.random.multivariate_normal([0, 0], [[1, 0.2], [0.2, 1]], 1000000)
print(np.average(simulated[:,0] ** 2 * np.exp(simulated[:,1])))
# 1.70735583203

Analíticamente, la expectativa viene dada por la siguiente expresión, basada en la normal bivariante pdf :

$$ \int_{-\infty}^\infty \int_{-\infty}^\infty f(x)g(y)\frac{1}{2\pi\sqrt{1-\rho^2}}\exp\bigg[-\frac{x^2-2\rho xy + y^2}{2(1-\rho^2)}\bigg] dxdy $$

Que esto tenga una solución analítica depende de las funciones $f$ y $g$ .

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X