# TAREA 4: FIN UNIDAD 5 (Estadística descriptiva)

La siguiente práctica consiste en la realización de dos ejercicios de estadística descriptiva: Uno de distribuciones unidimensionales y otro de distribuciones bidimensionales
Está enfocada para el alumnado de 4º ESO que cursa las Matemáticas orientadas a las enseñanzas académicas. Y se puede corresponder con el tema de Estadística

Para su realización se ha pensado en la siguiente distribución temporal:
        Primera sesión: Clase magistral (con ejemplos) para explicar los conceptos fundamentales de wxmaxima
        Segunda sesión: Clase magistral (con ejemplos) para explicar conceptos estadíscos en wxmaxima
        Tercera sesión: Clase práctica en la que el alumnado se va adaptando a wxmaxima
        Cuarta sesión: Comienzo con la resolución de los apartados a) y b) del problema 1
        Quinta sesión: Continuación con la resolución de los apartados c) y d) del problema 1
        Sexta sesión: Comienzo con la resolución de los apartados a), b) y c) del problema 2
        Séptima sesión: Continuación con la resolución de los apartados d) y e) del problema 2
        Octava sesión: Puesta en común de los resultados obtenidos y exposición de las dificultades encontradas.

## PROBLEMA 1

Enunciado 1

Introducimos los datos de la variable Z

Z:[87,85,61,51,64,75,81,70,69,82,81,79,82,75,91,76,72,73,63,66,67,71,88,76,69,73,70,76,71,87];

### Resolución del apartado a

Calculamos la media, la desviación típica, los cuartiles, la mediana y el percentil 60 de la variable inicial Z

[mean(Z),std(Z),quantile(Z,1/4),median(Z),quantile(Z,3/4),quantile(Z,3/5)],numer;

Conocidos estos parámentros, vamos a obtener el % de datos que se sitúan en el entorno centrado en la media y de radio, la desviación típica de Z

Z2:[]$
    for k:1 step 1 thru length(Z) do
if Z[k]>(mean(Z)-std(Z)) and Z[k]<(mean(Z)+std(Z)) then Z2:append(Z2,[Z[k]])$
print("Los valores dentro del intervalo centrado en la media son" (Z2))$
Porcentaje:(length(Z2)*100)/(length(Z))$
"El % de valores dentro del intervalo centrado en la media es el" (Porcentaje);

### Resolución del apartado b

Representamos la variable Z mediante un diagrama de barras (con las frecuencias absolutas dadas) y un diagrama de cajas y bigotes (utilizando la mediana y los cuartiles calculados en el apartado anterior). Para ello importamos el paquete "descriptive"

load("descriptive")$

wxbarsplot(Z,
title="DIAGRAMA DE BARRAS DE LA VARIABLE INICIAL",
box_width=1,
bars_colors=[green],
fill_density=2/5,
xlabel="Pulsaciones por minuto",
ylabel="Frecuencias absolutas");

wxboxplot(Z,
box_orientation=horizontal,
title="DIAGRAMA DE CAJAS Y BIGOTES DE LA VARIABLE INICIAL",
line_width= 3,
outliers_size= 2,
color= blue,
xlabel = "Pulsaciones por minuto");

### Resolución de apartado c

Vamos a hacer el agrupamiento de los datos de la variable Z en 7 intervalos. La variable así obtenida la llamaremos X

X:continuous_freq(Z,[50,92,7]);

X1:makelist([float((X[1][i+1]+X[1][i])/2),X[2][i]],i,1,length(X[2]));

XX:build_sample(X1)$

Claculamos la media, la desviación típica, la mediana, los cuartiles y el percentil 60 de la variable discretizada

[mean(XX),std(XX),quantile(XX,1/4),median(XX),quantile(XX,3/4),quantile(XX,3/5)];

Para comparar estos parámetros con los obtenidos en el apartado a), calculamos el error relativo cometido. Y podemos comprobar que en ningún caso se ha superado el 3%

[abs((mean(Z)-mean(XX))*100/mean(Z)),abs((std(Z)-std(XX))*100/std(Z)),
    abs((quantile(Z,1/4)-quantile(XX,1/4))*100/quantile(Z,1/4)),
    abs((median(Z)-median(XX))*100/median(Z)),
    abs((quantile(Z,3/4)-quantile(XX,3/4))*100/quantile(Z,3/4)),
    abs((quantile(Z,3/5)-quantile(XX,3/5))*100/quantile(Z,3/5))],numer;

### Resolución del apartado d

Ahora para representar esta variable definida a través de los intervalos construidos, contruimos el diagrama de cajas y bigotes y el histograma

wxboxplot(XX,
box_orientation=horizontal,
title="DIAGRAMA DE CAJAS Y BIGOTES DE LA VARIABLE DISCRETIZADA",
line_width= 3,
outliers_size= 2,
color= blue,
xlabel = "Pulsaciones por minuto");

No nos ha salido de forma exacta el mismo diagrama de cajas y bigotes que en el apartado b, pero las diferencias son mínimas. Como ya vimos al calcular los errores relativos en el apartado anterior

wxhistogram(XX,
title="HISTOGRAMA VARIABLE DISCRETIZADA",
nclasses=[50,92,7],
fill_color=blue,
xlabel="Pulsaciones por minuto",
ylabel="Frecuencias Absolutas",
fill_density=1/5);

Terminamos el ejercicio realizando el poligono de frecuencias absolutas y el polígono de frecuencias acumuladas

X1;
X2:makelist([X1 [i][1],sum(X1 [j][2],j,1,i)],i,1,length(X1));

wxplot2d([[discrete,X1],[discrete,X2]],[style,lines,lines],[color,red,blue],[title,"POLÍGONOS DE FRECUENCIAS"],
    [xlabel, "Pulsaciones por minuto"],
    [ylabel, "Frecuencias"],[legend,"frecuencias absolutas","frecuencias acumuladas"]);

## PROBLEMA 2

Enunciado 2

### Resolución apartado a

Introducimos los datos del ejercicio y obtenemos los parámetros pedidos

D:[0,1,1,2,2,3,4,5,7,9];
P:[3.7,3.5,3.8,2.9,3.1,2.6,2.5,2.1,2.0,1.7];
[[mean(D),var(D),std(D)],[mean(P),var(P),std(P)]],numer;

### Resolución apartado b

La covarianza se puede obtener utilizando la expresión que se deduce de su definición. Es decir, como el producto escalar de los vectores muestrales de datos menos sus medias:

Covarianza:(1/10)*(D-mean(D)).(P-mean(P));

O también, construyendo la matriz de datos conjuntos y construir la matriz de covarianzas. En este caso, el parámetro buscado se encuentra en los elementos de la diagonal secundaria de la matriz obtenida.

M:transpose(matrix(D,P));

CM:cov(M),numer;

El coeficiente de correlación se puede obtener aplicando la expresión que se deduce de su definición. Es decir, como el cociente de la covarianza entre el producto de las desviaciones típicas de las dos variables D y P

rDP:Covarianza/(std(D)*std(P)),numer;

Pero también se puede obtener calculando la matriz de correlación, cuyos elementos de la diagonal secundaria son iguales al coeficiente de correlación buscado.

cor(M),numer;

Un coeficiente de correlación de valor -0,94 nos indica que existe una relación lineal fuerte e inversa entre las dos variables analizadas. Por tanto, el ajuste con las rectas de regresión puede ser bastante bueno.

### Resolución apartado c

wxscatterplot(M, 
    xrange=[-1,10],yrange=[0,5],
    title="NUBE DE PUNTOS",
    xlabel="Distancia al centro (km)",
    ylabel="Precio m^2 (miles de euros)",
    point_type=filled_circle,
    point_size = 2);

La distribución de la nube de puntos en el diagrama anterior confirma lo que obtuvimos en el apartado anterior. Es una nube "delgada" y con "tendencia" decreciente. Por tanto, la relación existente entre las 2 variables es lineal fuerte e inversa.

### Resolución apartado d

Planteamos las expresiones de las dos rectas de regresión:
→Recta de regresión de Distancia sobre Precio

valorestimadoP(x):=((Covarianza.(x-mean(D))/(var(D)))+mean(P));

→Recta de regresión de Precio sobre Distancia

valorestimadoD(y):=((Covarianza.(y-mean(P))/(var(P)))+mean(D));

Si una vivienda se encuentra a 6 km del centro urbano, ...

valorestimadoP(6);

... el precio del metro cuadrado será algo màs de 2100 euros.

Y si el metro cuadrado es de 1500 euros, ...

valorestimadoD(1.5);

... la vivienda deberá estar a unos 8,16 km del centro urbano.

### Resolución apartado e

Comprobamos con las rectas de regresión que el centro de gravedad de esta distribución está en el punto cuyas coordenadas son los valores medios de cada distribución unidimensional.

valorestimadoP(3.4);
valorestimadoD(2.79);

Representamos de nuevo el diagrama de dispersión, pero incluyendo las dos rectas de regresión y el centro de gravedad

wxplot2d([[discrete,D,P],
    [discrete,[[mean(D),mean(P)]]],
        (Covarianza.(x-mean(D))/(var(D)))+mean(P),
        (var(P).(x-mean(D))/(Covarianza))+mean(P)],
    [x,-1,10],[y,0,5],
    [color,blue,red,green,magenta],
    [style,points,points,lines,lines],
    [title,"RECTA DE REGRESIÓN"],
    [xlabel, "Distancia al centro (km)"],
    [ylabel, "Precio m^2 (miles de euros)"],
    [legend,"nube de puntos","media","recta de regresión P sobre D","recta de regresión D sobre P"]);

Como hemos indicado en los apartados anteriores, como las dos rectas de regresión "casi" se superponen, el ajuste por las rectas de regresión es bastante bueno. 

FIN DE LA TAREA 4