Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Informe de Resultados Obtenidos Del Análisis de Datos Exploratorio Realizado Al Caso de Estudio
Informe de Resultados Obtenidos Del Análisis de Datos Exploratorio Realizado Al Caso de Estudio
Contents
Solución
La empresa A&A Ltda, empieza un proceso de implementación de Machine Learning, usted ha sido designado para una de las tareas más
importante dentro del proyecto, el cual consisten en realizar el análisis exploratorio de los datos y documentar los resultados encontrados,
generando un informe que involucre los procedimientos y los resultados. El archivo que se analizara corresponde a precios de viviendas y
locales para la venta y la colección de datos cuenta con variables que se ven involucradas en ese valor. La información se encuentra en el
siguiente enlace la cual usted debe descargar e importar con la herramienta anaconda, el archivo lo puede exportar en formato CSV.
vínculo de descarga
Se importa pandas
import pandas as pd
Solución
1) Procedimiento para la importación del archivo en formato CSV
filename = 'Inmuebles_Disponibles_Para_La_Venta.csv'
data = pd.read_csv(filename)
# se ajusta el precio dividido entre 1000_000 para entender mejor la información
data['Precio'] = data['Precio']/1000_000;
3) Total, de Registros
totalregistros = data['Codigo'].count()
print(f'total registros {totalregistros}') # en forma alternativa
data.shape[0]
459
4) Total de columnas
totalcolumnas = data.shape[1];
print(f'total columnas {totalcolumnas}')
total columnas 12
https://cienciadatos.gestionhseq.com/actividad4 1/14
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 459 entries, 0 to 458 Data columns (total 12 columns):
# Column Non-Null Count Dtype
res = dict((key, 'Numérica') if value == 'int64' else (key, 'Categórica') for key, value in info.items())
# se muestra como un dataframe
pd.DataFrame({'Columna': res.keys(),'tipo': res.values()})
Columna tipo
0 Codigo Numérica
1 Ciudad Categórica
2 Departamento Categórica
3 Barrio Categórica
4 Direccion Categórica
8 Estrato Categórica
9 Precio Categórica
Columnas Nulos
0 Barrio 401
Hay 12 registros duplicados, se procede a reemplazar la variable data con con contenidos de newdata
https://cienciadatos.gestionhseq.com/actividad4 2/14
Codigo Area Terreno Area Construida Precio
norepre = dict()
for tipoinmueble in data['Tipo de Inmueble'].unique():
muestras = data[data['Tipo de Inmueble'] == tipoinmueble].shape[0]
if muestras < 11:
norepre[tipoinmueble] = muestras
continue
fig = data[data['Tipo de Inmueble'] == tipoinmueble].boxplot("Precio", by="Departamento") plt.ylabel('precio')
plt.suptitle('')
plt.xticks(rotation=75);
plt.title(f'Tipo inmueble {tipoinmueble} sobre {muestras} muestras') print('Inmuebles no representativos por categoría')
pd.DataFrame({'Tipo inmueble':norepre.keys(),'muestras':norepre.values()})
Tipo inmueble
Inmuebles no representativos muestras
por categoría
0 LOTE COMERCIAL 3
1 CLINICA 2
2 HOTEL 1
3 FINCA 5
4 LOTE MIXTO 6
5 LOTE INDUSTRIAL 3
6 EDIFICIO VIVIENDA 1
7 CASA 9
9 LOTE AGRICOLA 5
10 EDIFICIO 2
11 APARTAMENTO 5
12 LOTE NO URBANIZABLE 1
13 LOTE 6
14 GARAJE 2
https://cienciadatos.gestionhseq.com/actividad4 3/14
https://cienciadatos.gestionhseq.com/actividad4 4/14
import matplotlib.pyplot as plt
Departamento Muestras
0 BOYACÁ 2
1 ATLÁNTICO 8
2 CAUCA 2
3 NORTE DE SANTANDER 3
4 TOLIMA 3
5 SANTANDER 2
6 CHOCÓ 2
7 CASANARE 3
8 CÓRDOBA 1
https://cienciadatos.gestionhseq.com/actividad4 5/14
https://cienciadatos.gestionhseq.com/actividad4 6/14
Estudio comparativo de variación de precios por estrato
Se convierte los valores de estrato a numéricos en una nueva columna, para que muestre los gráficos en orden
data['Estrato'].unique() mapa={'UNO':1,
'DOS':2,
'TRES':3,
'CUATRO':4,
'CINCO':5,
'SEIS':6,
'RURAL': 8,
'COMERCIAL':9,
'INDUSTRIAL':10,
}
data['Estrato_num'] = data.apply(lambda row: mapa[row.Estrato], axis = 1) data.head(5)
Area
Codigo Ciudad Departamento Barrio Direccion Area Detalle Tipo de Datos
Terreno Estrato Precio Estrato_num
Construida Disponibilidad Inmueble Adicionales
CL 10 SUR
# 34B-24 COMERCIALIZABLE
SANTA LOTE
0 2330 BOGOTA CUNDINAMARCA LT 2 MZ X- 559804 0 CON TRES 1.342810e+08
MATILDE VIVIENDA N
46 (SANTA RESTRICCION
MATILDE...
DG 140 # 67 -
30 IN 6 COMERCIALIZABLE LOTE
4 4408 BOGOTA CUNDINAMARCA SUBA (ZONA DE 1774266 0 CON COMERCIAL 1.380382e+08 VIVIENDA N
AFECTACIÓN RESTRICCION
PLAN...
https://cienciadatos.gestionhseq.com/actividad4 7/14
sin_area = data[data['Area Terreno'] == 0]['Area Terreno'].count(); print(f'Cantidad de registros sin area {sin_area}')
https://cienciadatos.gestionhseq.com/actividad4 8/14
Cantidad de registros sin area 423
https://cienciadatos.gestionhseq.com/actividad4 9/14
id cantidad inicial final
1 2 25 4586085.01 9108831.02
2 3 12 9108831.02 13631577.03
3 4 9 13631577.03 18154323.04
4 5 6 18154323.04 22677069.05
5 6 5 22677069.05 27199815.06
6 7 3 27199815.06 31722561.07
7 8 2 31722561.07 36245307.08
8 9 1 36245307.08 40768053.09
9 10 2 40768053.09 45290799.10
10 11 2 45290799.10 49813545.11
11 12 1 49813545.11 54336291.12
12 13 1 54336291.12 58859037.13
13 14 0 58859037.13 63381783.14
14 15 1 63381783.14 67904529.15
15 16 2 67904529.15 72427275.16
16 17 1 72427275.16 76950021.17
17 18 0 76950021.17 81472767.18
18 19 0 81472767.18 85995513.19
19 20 0 85995513.19 90518259.20
Con base en el punto anterior se nota que la mayor cantida de datos, 429, está hasta el valor de 76950021, por lo que se ajusta este como el
valor límite y se corre nuevamente la función
Datos id
paracantidad inicial
construir el histograma final
1 2 7 447773.01 832207.02
2 3 7 832207.02 1216641.03
3 4 5 1216641.03 1601075.04
4 5 6 1601075.04 1985509.05
5 6 4 1985509.05 2369943.06
6 7 2 2369943.06 2754377.07
7 8 1 2754377.07 3138811.08
8 9 0 3138811.08 3523245.09
9 10 4 3523245.09 3907679.10
10 11 2 3907679.10 4292113.11
11 12 2 4292113.11 4676547.12
12 13 3 4676547.12 5060981.13
13 14 3 5060981.13 5445415.14
14 15 7 5445415.14 5829849.15
15 16 0 5829849.15 6214283.16
16 17 2 6214283.16 6598717.17
17 18 2 6598717.17 6983151.18
18 19 1 6983151.18 7367585.19
19 20 0 7367585.19 7752019.20
https://cienciadatos.gestionhseq.com/actividad4 10/14
14/10/23, 23:37 Estudio de caso: análisis exploratorio de datos — Actividad analítica de datos.
# gráfica ampliada
res = get_hist_values(data, minimo, 447773.01 , bins=200) res.head(20)
Datos id
paracantidad
construir elinicial
histograma final
0 1 1 63339.00 65262.01
1 2 0 65262.01 67185.02
2 3 1 67185.02 69108.03
3 4 2 69108.03 71031.04
4 5 0 71031.04 72954.05
5 6 0 72954.05 74877.06
6 7 59 74877.06 76800.07
7 8 0 76800.07 78723.08
8 9 0 78723.08 80646.09
9 10 0 80646.09 82569.10
10 11 0 82569.10 84492.11
11 12 1 84492.11 86415.12
12 13 1 86415.12 88338.13
13 14 0 88338.13 90261.14
14 15 0 90261.14 92184.15
15 16 0 92184.15 94107.16
16 17 0 94107.16 96030.17
17 18 0 96030.17 97953.18
18 19 0 97953.18 99876.19
19 20 8 99876.19 101799.20
# se procede a graficar
axis = plt.bar(res['id'], res['cantidad']);
plt.title('Histograma distribución de presios ampliado') plt.ylabel("Cantidad");
plt.xlabel('Precios');
#plt.tick_params(axis='x', length=0)
Función para mejorar automáticamente el rango para hacer el estudio, sacando los
datos abs
Para ello el rango a utilizar será
11/14
14/10/23, 23:37 Estudio de caso: análisis exploratorio de datos — Actividad analítica de datos.
import numpy as np
def get_rango(data: pd.DataFrame, colname: str): res = data[colname].describe()
q2 = res['25%']
q3 = res['75%'] iqr = q3-q2
minvalue = q2-1.5*iqr; maxvalue = q3+1.5*iqr;
bins = int(np.ceil(np.log2(data.shape[0])) + 1)
return (max([0,minvalue]), maxvalue, max([1, bins]))
Datosidpara
cantidad inicial
construir el histograma final
1 2 40 229110.01 458220.02
2 3 4 458220.02 687330.03
3 4 4 687330.03 916440.04
4 5 4 916440.04 1145550.05
5 6 4 1145550.05 1374660.06
6 7 3 1374660.06 1603770.07
7 8 4 1603770.07 1832880.08
8 9 2 1832880.08 2061990.09
9 10 3 2061990.09 2291100.10
corr = data[['Estrato_num','Codigo','Precio','Departamento']].corr()
12/14
14/10/23, 23:37 Estudio de caso: análisis exploratorio de datos — Actividad analítica de datos.
Con base en la gráfica se puede notar que la mayor relación está entre el estrato y el código de la vivienda, sin embargo como este último es
solo un consecutivo se puede concluir que por falta de información en cuanto a las áreas no es posible concluir sobre una relación al respecto
data.info()
<class 'pandas.core.frame.DataFrame'>
Int64Index: 447 entries, 0 to 458 Data columns (total 13 columns):
Se filtran los contenidos con filas que tengan valores nulos en alguna de las columnas
dt = data
for k in columns:
dt = dt[dt[k].notnull()]; dt.count()
#dropped = data.dropna(how='all', axis=1);
#dropped
Codigo37
Ciudad37
Departamento37
Barrio37
Direccion37
Area Terreno37
Area Construida37
Detalle Disponibilidad37
Estrato37
Precio37
Tipo de Inmueble37
Datos Adicionales37
Estrato_num37
dtype: int64
13/14
14/10/23, 23:37 Estudio de caso: análisis exploratorio de datos — Actividad analítica de datos.
CRA. 10
ESTE INMUEBLE
#11- 78/80 COMERCIALIZABLE
2 2575 SOGAMOSO BOYACÁ CENTRO CUATRO 1.376828e+08 CLINICA SE
Ó CL 12 # 9 165508 726900 CON
COMERCIALIZARÁ
- 77/85 Ó RESTRICCION
A TRAVÉS DE SU...
CALLE...
DESEAS INVERTIR
CALLE 39 COMERCIALIZABLE
11 10106 BARRANQUILLA ATLÁNTICO CENTRO ESTA ES LA
NO 43 58 62 0 0 CON DOS 8.000330e+06 LOCAL
OPORTUNIDAD
LC 1 RESTRICCION
LOCAL E...
CISA VENDE
VALLE DEL LT B PARTE LOTE SOLO LOS
12 11335 CALI CIUDADELA COMERCIALIZABLE RURAL 1.667784e+07
CAUC DEL PREDIO 43039968 0 FIDUCI VIVIENDA DERECHOS
A CHIPICHAPE
CHIPICHAPE A FIDUCIARIOS DEL
0...
BG 20 ET BODEGA EN
PARQU I
COMERCIALIZABLE
E PARQU
E PROINDIVISO.
14 11786 VILLA RICA CAUCA INDUSTRIAL INDUSTRIAL 3035300 1198100 CON INDUSTRIAL 7.090341e+07 BODEGA
CON BUENAS
CAUCADESA CAUCADESA RESTRICCION
ESPECIFICACI...
KM 43
...
PARQU LT 8 ET I COMERCIALIZABLE LOTE TERRENO
SANTANDER DE E
CAUCA PARQUE LOTE NETO , EN
15 11787 IND CON RURAL 1.416213e+07
QUILICHAO 4612600 0 INDUSTRI PROINDIVISO,
INDUSTRIAL RESTRICCION
CAUCADESA SEMI-URBAN...
CAUCADESA
CISA VENDE
RESERVA COMERCIALIZABLE LOTE
CALIMA EL VALLE DEL VEREDA DERECHOS
16 12112 FORESTAL 218786300 0 RURAL 2.406650e+07
FIDUCIA MIXT FIDUCIARIOS DEL
DARIEN CAUCA PALERMO
LT 1A O 9.48%\n\nF...
CISA VENDE
CISA VENDE
18 12114 CALIMA EL VALLE DEL VEREDA COMERCIALIZABLE DERECHOS
LOTE
DARIEN CAUCA PALERMO LT 1B 17598200 0 RURAL 2.704525e+07 FIDUCIARIOS DEL
FIDU VIVIEN 9.48%\n\nF...
LOTE DE
19 12115 CALIMA EL VALLE DEL VEREDA COMERCIALIZABLE TERRENO QUE
LOTE
DARIEN CAUCA PALERMO LT 1C 6400000 70000 RURAL 1.042887e+07 HACE PARTE DEL
FIDU VIVIEN PROYECTO CA...
14/14
14/10/23, 23:37 Estudio de caso: análisis exploratorio de datos — Actividad analítica de datos.
Area
Codigo Ciudad Departamento Barrio Direccion Area Detalle Tipo de
Construida Disponibilidad Estrato Precio
Terre Inmue
SANTA COMERCIALIZABLE LOTE
0 2330 BOGOTA CUNDINAMARCA CL 10 SUR # 34B-24 LT 2 MZ X-46 TRES 1.342810e+08
559804 0 CON VIVIENDA
MATILDE (SANTA MATILDE...
RESTRICCION
COMERCIALIZABLE LOTE ES
KR 84 CON CL 10 LT # 8 DE
SAN PRE
1 2363 BOGOTA CUNDINAMARCA TINTALA 302079 0 CON TRES 3.285750e+07
JUAN DE CASTILLA... COMERCIAL DE R
RESTRICCION
ES
CRA. 10 #11- 78/80 Ó CL 12 # 9 - COMERCIALIZABLE
2 2575 SOGAMOSO BOYACÁ CENTRO 165508 726900 CON CUATRO 1.376828e+08 CLINICA
77/85 Ó CALLE... COM
RESTRICCION
A TR
COMERCIALIZABLE LOTE
LOTE 3 PARCELACIÓN LOS CERROS RURAL 5.520000e+06
3000000 0 CON VIVIENDA
3 2669 LA CALERA CUNDINAMARCA LA CALERA HACIENDA SAN RAFAEL
RESTRICCION
COMERCIALIZABLE LOTE
DG 140 # 67 - 30 IN 6 (ZONA DE COMERCIAL 1.380382e+08
1774266 0 CON VIVIENDA
4 4408 BOGOTA CUNDINAMARCA SUBA AFECTACIÓN PLAN...
RESTRICCION
LT # LOS
LOTE
6 5287 BOGOTA CUNDINAMARCA NaN
VEREDA C
899/900/901/902/903/904/905/90 2240 0 COMERCIALIZABLE COMERCIAL 5.143040e+05
7 5616 CHIA CUNDINAMARCA 6 COMERCIAL T
FONQUETA CEMENTERI..
.
COMERCIALIZABLE
1113000 57000 CON RURAL 2.785554e+07 FINCA
FINCA SAN ANTONIO DE RESTRICCION
LOS VIENTOS - VEREDA
FONQ... COMERCIALIZABLE
VEREDA DE
8 7394 BITUIMA CUNDINAMARCA FINCA BUENAVISTA Y BUENOS
CAMBULAR 18000000 0 CON RURAL 4.806000e+06 FINCA
AIRES
RESTRICCION
COMERCIALIZABLE
9 7539 TENJO CUNDINAMARCA NaN CHURUGUACO LA GUACA 0 0 CON RURAL 6.369860e+06 FINC
RESTRICCION
1. Codigo
2. Area - porque la mayoría son datos sin reportar o cero
3. Detalle Disponibilidad
4. Direccion
18) Realice conclusiones sobre las variables que considere tienen mayor
relevancia
Conclusiones:
1. No se pudo realizar el análisis concluyente por no porder calcular el valor por metro cuadrado
2. La mayor cantidad de datos reportador fueron hast 458_220 millones
3. La mayor variabilidad de precios se encuentra en el sector rural.
4. La mayor información disponible está para los locales con 301 muestras.
5. Para realizar una compra se deberá completar la información de las áreas y tomar una mejor decisión con base en la evidencia
15/14