Estadistica Descriptiva: Comandos utilizados

RESUMEN ACORDE CON LA CLASIFICACION DE LA TEORIA DE CLASE
Descriptivos de posición: Quantiles; Quartiles; TrimmedMean (Se utiliza para eliminar outliers y qu e la media no quede afectada por estos valores)
Descriptivos centrales: Mean (Media aritmética); GeometricMean; HarmonicMean; Median(Mediana); Commonest (Moda)
Descriptivos de dispersión: Max; Min; Variance(Varianza); StandardDeviation(Desviación típica); MeanDeviation; MedianDeviation; InterquartileRange(Rango intercuartílico); QuartileDeviation
Descriptivos de forma: CentralMoment; Skewness(Coeficiente de asimetría); Kurtosis(Curtosis); QuartileSkewness

ESTADISTICOS COMUNES + UTILIZADOS CON EL MATHEMATICA
----------------------------------------------------------------------------------------------
({{Mean[data], average value (1/n)(∑_i)(Subscript[x, i])}, {Median[data], median (central value)}, {Commonest[data], list of the elements with highest frequency}, {GeometricMean[data], geometric mean ((((∏_i)(Subscript[x, i])))^(1/n)) }, {HarmonicMean[data], harmonic mean n/(∑_i)(1/(Subscript[x, i]))}, {RootMeanSquare[data], root mean square (Sqrt[(1/n)(∑_i)(Subscript[x, i]^2)]) }, {TrimmedMean[data,f], mean of remaining entries, when a fraction f is removed from each end of the sorted list of data }, {TrimmedMean[data,{(Subscript[f, 1]),(Subscript[f, 2])}], mean of remaining entries, when fractions (Subscript[f, 1]) and (Subscript[f, 2]) are dropped from each end of the sorted data }, {Quantile[data,q], q(\[Null]^th) quantile}, {Quartiles[data], list of the (1/4)(\[Null]^th), (1/2)(\[Null]^th), (3/4)(\[Null]^th) quantiles of the elements in list}})

Para trabajar con tablas de frecuencias hay que cargar un paquete de mathematica que se llama
Statistics`DataManipulation`

Functionality in this package has been added to the built-in Mathematica kernel.
CumulativeSums is replaced by Accumulate.
Frequencies is replaced by Tally.
BinCounts and BinLists incorporate the functionality of RangeCounts and RangeLists from Version 5.2.

1+1

Para poder aplicar estas ordenes cargamos el paquete correspondiente

<<StatisticalPlots`

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
EJERCICIO 1
--------------------
--------------------
Construcción de una lista de datos utilizando el comando Random

data=RandomReal[50,20]

Quantile[data,4/5]

Quantile[data, 95/100]

Quartiles[data]

Quantile[data,1/4]

Quantile[data,3/4]

Mean[data]

Excluimos 1/7 de datos por la cola de la derecha (altos)  y por la cola de la izquierda (bajos) y vemos como afecta a la lista de datos

TrimmedMean[data,1/7]

Si excluimos del extremo de la izquierda (bajos)

TrimmedMean[data,{1/7,0}]

La media geométrica

GeometricMean[data]

La media armónica es la inversa del reciproco de la media aritmética

HarmonicMean[data]

Median[data]

Max[data]

Min[data]

Para calcular el rango basta con ver los valores máximo y mínimo de la lista. En nuestro caso:

rangocalculado=%18-%19

Para calcular la moda:

Mode[{38.64172128075077`,44.23594533117239`,29.06284053378857`,22.967774480141333`,46.299558604218525`,16.70052041733171`,36.178350074672196`,42.359768412655164`,20.481268105442872`,34.1277857668741`,47.025887408580715`,7.300704647819001`,45.40268398502897`,42.99030217424432`,13.064277616455511`,21.4905070062965`,24.063664057706326`,17.363144350342598`,12.36880110838091`,4.980179403533668`}]

Commonest[{38.64172128075077`,44.23594533117239`,29.06284053378857`,22.967774480141333`,46.299558604218525`,16.70052041733171`,36.178350074672196`,42.359768412655164`,20.481268105442872`,34.1277857668741`,47.025887408580715`,7.300704647819001`,45.40268398502897`,42.99030217424432`,13.064277616455511`,21.4905070062965`,24.063664057706326`,17.363144350342598`,12.36880110838091`,4.980179403533668`}]

Variance[data]

La desviación típica es la raiz de la varianza:

StandardDeviation[data]

CentralMoment[data,2]

Skewness[data]

Nos premite ver si es platicúrtica, leptocúrtica o mesocúrtica, asi como su grado de desviación.

El comando Random sirve tambien para crear listas con datos repetidos, y manejar listas con frecuencias:

??BlockRandom

??RandomInteger

Remove[data]

data = BlockRandom[SeedRandom[3];
RandomInteger[10,{10,4}]]

MatrixForm[data]

??Grid

Grid[data]

Remove[data]

Para evitar copiar los  datos para el ejercicio siguiente, se pueden pedir 72 datos aleatorios:

RandomInteger[100,72]

tmuestra=Length[%69]

EJERCICIO 2
Los datos siguientes son los pesos en gramos de 72 muestras de una determinada sustancia

pesos={86,69,0,41,71,33,32,87,23,33,85,93,56,79,65,5,9,86,77,35,81,74,77,31,59,100,41,54,59,15,95,28,97,15,82,38,61,100,30,20,57,94,83,99,82,24,16,78,24,65,70,57,48,24,48,42,71,1,54,53,36,86,40,18,75,92,33,31,37,33,34,15}

?pesos

Global`pesos

a.-Construye una tabla de frecuencias,agrupando los datos en ocho clases de igual amplitud,siendo la primera clase:10.5-21.5

tmuestra=Length[pesos]

??Tally

Tally[pesos]

??Sort

Sort[pesos]

Tally[pesos,test]

Sort[pesos,#1[[2]]<#2[[2]]&]

Sort[pesos,p]

pesosFrec=Sort[Tally[pesos]]

IntervaloFrec=BinCounts[pesos,{10.5,98.5,11}]

Intervalo=Table[{i,i+11},{i,10.5,87.5,11}]

Dimensions[pesosFrec]

pesosFrec[[1,1]]

pesosFrec[[1]]

Trabajo con matrices y vectores

({{Table[f,{i,m},{j,n}], build an m×n matrix by evaluating f with i ranging from 1 to m and j ranging from 1 to n}, {Array[a,{m,n}], build an m×n matrix with i,j(\[Null]^th) element a[i,j]}, {IdentityMatrix[n], generate an n×n identity matrix}, {DiagonalMatrix[list], generate a square matrix with the elements in list on the main diagonal}, {list[[i]]  or  Part[list,i], give the i(\[Null]^th) row in the matrix list}, {list[[All,j]]  or  Part[list,All,j], }, {, give the j(\[Null]^th) column in the matrix list}, {list[[i,j]]  or  Part[list,i,j], give the i,j(\[Null]^th) element in the matrix list}, {Dimensions[list], give the dimensions of a matrix represented by list}})Para visualizar

({{Column[list], display the elements of list in a column}, {MatrixForm[list], display list in matrix form}})

Dato=Part[pesosFrec,All,1]

Dato=Prepend[Dato,"xi"]

DatoFrec=Part[pesosFrec,All,2]

MatrixForm[pesosFrec]

Grid[pesosFrec]

Global`pesos

Mean[pesos]

Median[pesos]

Commonest[pesos]

Histogram[{51,55,42,53,46,60,29,56,20,52,51,33,61,57,55,59,38,56,41,47,68,24,67,52,64,69,43,47,42,65,96,21,48,47,25,82,37,60,12,77,56,97,28,45,63,28,45,63,28,52,60,51,61,62,52,97,73,45,69,67,29,75,63,30,17,69,68,74,16,83,47,16},8,"Count"]

Para realizar tablas sobre frecuencias acumuladas.

?pesosFrec

DatoFrec=Part[pesosFrec,All,2]

DatoAcum=Accumulate[DatoFrec]

DatoFrecRel=N[DatoFrec/tmuestra]

DatoAcumRel=N[DatoAcum/tmuestra]

?Dato

?DatoFrec

DatoFrec=Prepend[DatoFrec,"fi"]

?DatoAcum

DatoAcum=Prepend[DatoAcum,Fi]

?DatoFrecRel

DatoFrecRel=Prepend[DatoFrecRel,fri]

?DatoAcumRel

DatoAcumRel=Prepend[DatoAcumRel,Fri]

?Dato

?DatoFrec

t={Dato,DatoFrec}

Grid[Transpose[t],Frame->All]

t={Dato,DatoFrec,DatoAcum,DatoFrecRel,DatoAcumRel}

?Grid

Grid[Transpose[t],Frame->All]

GRAFICAS DE DESCRIPTIVOS
-----------------------------------------

Visualizacion de los datos
Histograma

Histogram[pesos,100,"Count"]

Histogram[pesos,50,"Count"]

Histogram[pesos,25,"Count"]

Histogram[pesos,10,"Count"]

Histogram[pesos,5,"Count"]

Histogram[pesos,1,"Count"]

Visualizacion de los datos
BoxWhiskerPlot

<<StatisticalPlots`

BoxWhiskerPlot[pesos,BoxOutliers->All]

Visualización de los datos

Algo que no se ha tratado en teoria de forma suficiente, pero que tiene un Comando para representar, es el deniminado diagrama del tallo y las hojas:

StemLeafPlot[{1.5,3.7,4.3,5.1,2.2,2.3,1.6,1.7,3.1}]

?pesos

Names["Global`*"]

Remove[Dato,DatoAcum,DatoAcumRel,DatoFrec,DatoFrecRel,pesos,pesosFrec,t,tmuestra,CumulativeSums,Dimension,Fi,fri,Fri,p,pesoFrec]

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
EJERCICIO 3
------------------
------------------
La variable "datos" contiene las emisiones de CO2 en toneladas métricas per cápita de diferentes paises (2007, datos obtenidos de Indicadores de los Objetivos del Desarrollo del Milenio de la ONU)

datos= {{"Alemania",10.2},{"Australia",19},{"Austria",8.9},{"Belarús",5.8},{"Bélgica",10.9},{"Bulgaria",7.7},{"Canadá",17.9},{"Croacia",5.6},{"Dinamarca",9.81},{"Eslovaquia",7.1},{"Eslovenia",8.5},{"España",8.3},{"Estados Unidos",19.7},{"Estonia",14.2},{"Federación de Rusia",11.1},{"Finlandia",12.5},{"Francia",6.5},{"Grecia",10.2},{"Hungría",5.8},{"Irlanda",10.9},{"Islandia",10.7},{"Italia",8},{"Japón",10.2},{"Letonia",3.8},{"Liechtenstein",6},{"Lituania",4.7},{"Luxemburgo",24.9},{"Mónaco",2.8},{"Noruega",9.5},{"Nueva Zelandia",8.4},{"Países Bajos",10.5},{"Polonia",8.6},{"Portugal",5.9},{"Reino Unido",9},{"República Checa",12.7},{"Rumania",5.2},{"Suecia",5.6},{"Suiza",5.8},{"Turquía",4.2},{"Ucrania",7.3}};

Dimensions[datos]

MatrixForm[datos]

emisiones=datos[[All,2]]

Calcular todos los descriptivos

Sort[Tally[emisiones]]

Mean[emisiones]

Median[emisiones]

Mode[emisiones]

Commonest[emisiones]

Quartiles[emisiones]

Quantile[emisiones,{0.1,0.25,0.4,0.5,0.6,0.75,0.9}]

Min[emisiones]

Max[emisiones]

Variance[emisiones]

StandardDeviation[emisiones]

Coeficiente de variación=SD/xmed

CV=%140/%150

Skewness[emisiones]

Kurtosis[emisiones]

etiquetas=datos[[All,1]]

BarChart[emisiones,ChartLabels->etiquetas]

Ejercicio a solicitar en la Práctica 2:

 Genera una tabla aleatoria de 20 valores reales y asignalo a su correspondiente valor comprendido entre 1 y 20, expresandolo mediante el Grid[datos].  Obtén la media, mediana,moda,desviación típica , 1º y 3º cuartil y curtosis.

b=RandomReal[1,20]

a=Table[i,{i,1,20,1}]

ciudades=Prepend[a,Ci]

datos=Prepend[b,d]

t={ciudades,datos}

Grid[Transpose[t],Frame->All]