Analisis Exploratorio Datos
Esther ArenasApuntes25 de Abril de 2021
8.637 Palabras (35 Páginas)108 Visitas
1 Introducción
1.1 Los primeros pasos para el analisis son
Obtencion de los datos: ficheros locales, consultas bbdd, repositorios web
Cargar los datos: Los datos pueden ser de diferentes formatos: csv, xls, html,JSON, xml, etc
Analisis exploratorio: Es un enfoque sistematico de analisis preliminar de datos. Este metodo esta basado en tecnicas graficas y descriptivas cuyo objetivo es ganar intuicion sobre los datos.
Detectar valores ouliers.
Extraer variables importantes
Evaluar la existencia de datos ausentes(alerta)
Limpiar los datos:
Eliminar columnas vacias
Unificar
Inputar, etc
target encoding: le brindan un peso por categoria
2 Tipos de variables¶
Cuantitativas: naturales numericas
Cualitaticas: Propiedades no cuantificables
Ordinales: sector social, grado de escolaridad
Nominales:
3 ¿ que debemos construir?
Los metodos EDA se pueden clasificar:
* Expresiones numericas: coeficientes, frecuencias etc
* Graficos informativos: Histogramas, barras, mapas de claro, barras apiladas, etc
4 Analisis Univariante: Tecnicas graficas y numericas
4.1 Variables cuantitativas:
4.1.1 Tecnicas numericas:
Medida de Tendencia de central:
Media:
* indica un promedio de un conjunto de datos
* Se ve afectado por valores atipicos
* Para que sirve?:
* Empleado para inputar los datos(missing values)
* Empleado para reemplazar por los valores outliers
podemos reemplazar los valores atipicos, por la media con Loc
si la dispersion es muy grande se emplea la mediana
Mediana:
* Es el valor central de la muestra, una vez ordenada
Moda:
* Es el valor que mas se repite dentro de la muestra
La medida de dispersion:
* Rango: rango=max(x)-min(x)
* Variancia y desviación tipica
* La varianza esta en unidad cuadratica, con respecto a la medioa
* La desviacion standar es la raiz cuadrada de la varianza y se encuentra en las mismas unidades que la media
* Los outliers: o valores atipicos pueden tener un efecto excesivo en la varianza o desviacion estandar
Coeficiente de variacion:
* Es el cociente entre la desviacion tipica y la mediana. Empleado para comparar el grado de variabilidad de los
datos de muestras diferentes
Rango intercuartil:
* Rango intercuartil: Percentil 75 - Percentil 25
* Limite superior= P75+1.5(Rintercuartil)
* Limite inferior= P25-1.5(Rintercuartil)
*Para eliminar los valores outliers son los que son menores al limite inf y los mayores al limite sup
Medidas de Formas:
Asimetria: Coeficiente de Fisher
Histogramas simetricos
Histogramas Asimetricos:
Cola Derecha( Asimetria positiva)
Cola Izquierda(Asimetria negativa)
Kurtosis:
Grado
5 Tecnicas graficas
Histograma
Boxplot
Diagrama de Lineas(series temporales)
5.1 Variables cualitativas:
El tratamiento de las variables cualitativas es diferente de las cuantitativas, ya que no podemos operar de manera algebraica.
5.1.1 Tratamiento de variables cualitativas:
Tablas de frecuencia
5.2 Discrtizacion
Las variables cuantitativas se pueden transformar en variables cualitativas mediante un proceso de discretizacion
5.3 Tecnicas graficas:
*
En base a los tipos de variables: Tecnicas
6 CASO DE ANALISIS
6.1 Primer paso importar las librerias
In [1]:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns
%matplotlib inline
6.2 Lectura de datos
In [44]:
#minuscula
#separacion por "_"
housing_price=pd.read_csv("housing_price.csv",sep=',')
housing_price.head()
Out[44]:
Id MSSubClass MSZoning LotFrontage LotArea Street Alley LotShape LandContour Utilities ... PoolArea PoolQC Fence MiscFeature MiscVal MoSold YrSold SaleType SaleCondition SalePrice
0 1 60 RL 65.0 8450 Pave NaN Reg Lvl AllPub ... 0 NaN NaN NaN 0 2 2008 WD Normal 208500
1 2 20 RL 80.0 9600 Pave NaN Reg Lvl AllPub ... 0 NaN NaN NaN 0 5 2007 WD Normal 181500
2 3 60 RL 68.0 11250 Pave NaN IR1 Lvl AllPub ... 0 NaN NaN NaN 0 9 2008 WD Normal 223500
3 4 70 RL 60.0 9550 Pave NaN IR1 Lvl AllPub ... 0 NaN NaN NaN 0 2 2006 WD Abnorml 140000
4 5 60 RL 84.0 14260 Pave NaN IR1 Lvl AllPub ... 0 NaN NaN NaN 0 12 2008 WD Normal 250000
5 rows × 81 columns
In [45]:
#Revision de la cantidad de registros y columnas
housing_price.shape
Out[45]:
(1460, 81)
In [46]:
#Revisar si los rgistros se cargaron de manera correcta
housing_price.head()
housing_price.tail()
Out[46]:
Id MSSubClass MSZoning LotFrontage LotArea Street Alley LotShape LandContour Utilities ... PoolArea PoolQC Fence MiscFeature MiscVal MoSold YrSold SaleType SaleCondition SalePrice
1455 1456 60 RL 62.0 7917 Pave NaN Reg Lvl AllPub ... 0 NaN NaN NaN 0 8 2007 WD Normal 175000
1456 1457 20 RL 85.0 13175 Pave NaN Reg Lvl AllPub ... 0 NaN MnPrv NaN 0 2 2010 WD Normal 210000
1457 1458 70 RL 66.0 9042 Pave NaN Reg Lvl AllPub ... 0 NaN GdPrv Shed 2500 5 2010 WD Normal 266500
1458 1459 20 RL 68.0 9717 Pave NaN Reg Lvl AllPub ... 0 NaN NaN NaN 0 4 2010 WD Normal 142125
1459 1460 20 RL 75.0 9937 Pave NaN Reg Lvl AllPub ... 0 NaN NaN NaN 0 6 2008 WD Normal 147500
5 rows × 81 columns
In [13]:
#Para saber los tipos de datos de las columnas
housing_price.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 1460 entries, 0 to 1459
Data columns (total 81 columns):
Id 1460 non-null int64
MSSubClass 1460 non-null int64
MSZoning 1460 non-null object
LotFrontage 1201 non-null float64
LotArea 1460 non-null int64
Street 1460 non-null object
Alley 91 non-null object
LotShape 1460 non-null object
LandContour 1460 non-null object
Utilities 1460 non-null object
LotConfig 1460 non-null object
LandSlope 1460 non-null object
Neighborhood 1460 non-null object
Condition1 1460 non-null object
Condition2 1460 non-null object
BldgType 1460 non-null object
HouseStyle 1460 non-null object
OverallQual 1460 non-null int64
OverallCond 1460 non-null int64
YearBuilt 1460 non-null int64
YearRemodAdd 1460 non-null int64
RoofStyle 1460 non-null object
...