DISTRIBUCION NORMAL MULTIVARIANTE

Simulacion de una Distribucion normal multiple.

library(mvtnorm)

mu <- c(65, 165)
Sigma <- matrix(c(20, 11, 
                  11, 30), nrow=2 , byrow = TRUE) 

N <- 50
Peso     <- seq(from=40, to=85, length.out=N)
Estatura <- seq(from=145, to=185, length.out=N)

densidad_curva <- function(x1, x2) dmvnorm(cbind(x1, x2), mean=mu, sigma=Sigma)  

probX <- outer(Peso, Estatura, FUN="densidad_curva")

persp(Peso, Estatura, probX, theta=45, phi=20,
      xlab="Peso",ylab="Estatura", zlab="", ticktype="detailed", nticks=4, col="khaki1")

library(mvtnorm)

mu <- c(65, 165)
Sigma <- matrix(c(20, 11, 11, 30), nrow=2 , byrow = TRUE) 
dmvnorm(c(60, 160), mean=mu, sigma=Sigma) # Para A
[1] 0.003502017
dmvnorm(c(80, 170), mean=mu, sigma=Sigma) # Para B
[1] 2.103677e-05
library(rgl)
plot3d(densidad_curva, col = colorRampPalette(c("blue", "white")), xlab= "Peso", ylab = "Estatura", zlab = "Den", xlim = c(40, 85), ylim = c(145, 185),aspect = c(1, 1, 0.5))
require(MASS)
Cargando paquete requerido: MASS
set.seed(1974)
n <- 1000
centro <- c(65, 165)
Sigma <- matrix(c(20, 21,
                  21, 30), ncol=2, nrow=2)
dt <- mvrnorm(n=n, mu=centro, Sigma=Sigma)

# ploting
plot(dt, xlab='Peso (kg)', ylab='Estatura (cm)', pch=20,
     #xlim=c(55, 75), ylim=c(140, 190), 
     las=1)
points(x=centro[1], y=centro[2], pch='+', col='tomato', cex=3)
points(x=60, y=160, pch=20, col='green3', cex=3)
points(x=65, y=155, pch=20, col='dodgerblue2', cex=3)
points(x=67, y=155, pch=20, col='purple', cex=3)