Вы находитесь на странице: 1из 3

Practica 1: Variables Aleatorias

Tratamiento de la Informacion
UCSP - 2016-II
22 de agosto de 2016

Introducci
on
Enunciado
Generaci
on de variables aleatorias unidimensionales e histograma.
Matlab dispone de dos generadores de variables aleatorias fundamentales: la funcion randn, que genera
n
umeros reales que siguen una fdp gaussiana de media nula y varianza unidad; y la funcion rand, que
genera n
umeros reales de acuerdo con una fdp uniforme en el intervalo [0, 1].
Un modo muy conveniente de esbozar una fdp asociada a una muestra de valores de una variable aleatoria
es mediante el histograma. Esa tecnica consiste en dividir el rango de valores que toma la variable
aleatoria en intervalos del mismo tama
no y contar cuantos elementos de la muestra caen en cada intervalo.
La funcion Matlab que calcula histogramas es hist. Para que el histograma parezca una fdp es conveniente
normalizarlo a fin de que tenga
area unidad.
1. Genere una muestra de 100 n
umeros que sigan una fdp gaussiana de media nula y varianza unidad
y almacenelos en la variable N100. Represente graficamente los valores que toma la variable N100.
>> N100 = randn(100,1);
>> figure(1)
>> plot(N100,zeros(100,1),*);
>> figure(2)
>> stem(N100)
Indique la diferencia entre las representaciones de las figuras 1 y 2.
2. Represente gr
aficamente un histograma normalizado (area unidad) de 10 intervalos de dicha muestra:
>> [binh,binc] = hist(N100,10);
>> c=1/100/(binc(2)-binc(1));
>> figure(3);
>> bar(binc,binh*c,1);
>> shg

3. Represente gr
aficamente la forma de la fdp gaussiana ideal correspondiente encima del histograma
>> hold on
>> t=-4:0.1:4;
>> x=1/sqrt(2*pi)*exp(-(t.*t)/2);
>> plot(t,x,r);
Indique la diferencia entre las representaciones de las figuras 1, 2 y 3.
4. Repita los pasos anteriores para un tama
no de muestra de 5000 n
umeros y un histograma de 10 y
100 niveles. Para ello genere la variable N5000 como una muestra de 5000 puntos de una gaussiana
de media nula y varianza unidad.
5. Repita los pasos anteriores sustituyendo la distribucion gaussiana por una uniforme en el intervalo
[0, 1], generando para ello las variables U100 y U5000.

Transformaci
on de variable aleatoria unidimensional
Aplicando transformaciones a las variables aleatorias fundamentales vistas en el apartado anterior, podemos conseguir otras variables aleatorias.
1. Realice las siguientes transformaciones a la variable N5000:
>> X3 = N5000 + 3;
>> X4 = N5000*0.5 + 3;
Calcule sus histogramas normalizados, representelos en figuras diferentes y adivine cuales seran
sus fdp correspondientes. Puede apoyarse en las funciones Matlab mean, std y var que calculan la
media, desviaci
on tpica y varianzas muestrales de las variables.
2. Cual es la fdp resultante de aplicar la siguiente transformacion a la variable U5000?:
>> Y3 = U5000*0.5 + 10;
3. Cual es la fdp resultante de aplicar la siguiente transformacion a la variable U5000?:
>> Y4 = -2*log(U5000);
Compruebelo analticamente aplicando transformacion de variable aleatoria.

Variable aleatoria bidimensional


Mediante las funciones rand y randn pueden generarse muestras de variables aleatorias multidimensionales. En el caso randn tenemos una fdp gaussiana de media nula y matriz de covarianzas identidad. En
el caso de rand tenemos una distribuci
on uniforme en la hipercubo [0, 1]n componentes de la variable
multidimensional son independientes e identicamente distribuidas.
1. Genere 1000 muestras de una variable gaussiana bidimensional de media nula y matriz de covarianzas identidad y represente su scatter plot.
>> NN1000 = randn(1000,2);
figure(4)
plot(NN1000(:,1),NN1000(:,2),.);
grid on

axis([-4 4 -4 4]);
axis(square);
Compruebe la simetra de esta distribucion: a lo largo de cada recta que pase por el origen de
coordenadas, tenemos una distribuci
on gaussiana de media nula y varianza unidad.
2. Genere 1000 muestras de una variable uniforme en [0, 1]2 y represente su scatter plot.
>> UU1000 = rand(1000,2);
figure(5)
plot(UU1000(:,1),UU1000(:,2),.);
grid on
axis([-1 2 -1 2]);
axis(square);
Compruebe la simetra de esta distribucion: a lo largo de cada recta paralela a los ejes, tenemos
una distribuci
on uniforme en [0, 1].
3. Aplique la siguiente transformaci
on a la variable NN1000:
>> XX1000 = NN1000 * [0.9258 0.3781; 0.3781 0.9258] + ones(1000,1)*[2 3];
Dibuje el scatter plot de la variable XX1000 y averig
ue cual sera su fdp. Ayuda: la funcion Matlab
cov calcula matrices de covarianzas a partir de muestras. Observe como cambia la simetra de la
fdp con respecto a la de la gaussiana de matriz de covarianzas identidad.

Вам также может понравиться