Segmentación de Países por Clustering
Segmentación de Países por Clustering usando Datos Socioeconómicos
Proyecto práctico del curso de Clustering con Python y scikit-learn, en el que se analizan datos socioeconómicos de países para segmentarlos mediante técnicas de escalado, análisis PCA y clustering. Se incluye limpieza, visualización, reducción de dimensionalidad y preparación para modelos de agrupamiento no supervisado.
1import pandas as pd
2import numpy as np
3import matplotlib.pyplot as plt
4import seaborn as sns
5
6df_country = pd.read_csv('/content/Country-data.csv')
7
8# Verificamos si hay valores nulos en el dataset
9df_country.isnull().sum() # country 0
10 # child_mort 0
11 # exports 0
12 # health 0
13 # imports 0
14 # income 0
15 # inflation 0
16 # life_expec 0
17 # total_fer 0
18 # gdpp 0
1df_country[df_country.duplicated()]
2
3int_cols = df_country.select_dtypes(exclude='object').columns
4for _ in int_cols:
5 plt.figure(figsize=(10,10))
6 sns.boxplot(data=df_country, y=_)
7 plt.show()
1fig = plt.figure(figsize=(15,10))
2sns.heatmap(df_country.corr(), annot=True, cmap='coolwarm')
3plt.show()
1from sklearn.preprocessing import StandardScaler
2scaaler = StandardScaler()
3df_country_scaled = scaaler.fit_transform(df_country.drop('country',axis=1))
4df_country_scaled = pd.DataFrame(df_country_scaled, columns = df_country.drop('country',axis=1).columns)
5
6from sklearn.decomposition import PCA
7pca = PCA()
8pca.fit(df_country_scaled)
9pca_data_scaled = pca.transform(df_country_scaled)
10
11var = pca.explained_variance_ratio_
12print(var) # [0.4595174 0.17181626 0.13004259 0.11053162 0.07340211 0.02484235 0.0126043 0.00981282 0.00743056]
13
14cum_var = np.cumsum(np.round(var, decimals=4)*100)
15plt.figure(figsize=(10,10))
16plt.plot(cum_var, 'r-x')
17plt.show()
1pca_data_standard = pd.DataFrame(pca_data_scaled)
2pca_data_standard.drop([4,5,6,7,8], axis=1, inplace=True)
3
4# Ejemplo de cómo se ve el DataFrame resultante tras conservar solo las primeras 4 componentes principales:
5# 0 1 2 3
6# 0 -2.913025 0.095621 -0.718118 1.005255
7# 1 0.429911 -0.588156 -0.333486 -1.161059
8# 2 -0.285225 -0.455174 1.221505 -0.868115
9# 3 -2.932423 1.695555 1.525044 0.839625
10# 4 1.033576 0.136659 -0.225721 -0.847063
Explora el Proyecto
Contenido Relacionado
¿Qué es la visión artificial?
Computer Vision es un campo de la informática que se centra en permitir que los equipos identifiquen y comprendan objetos y personas en imágenes y vídeos.
REGRESIÓN LOGÍSTICA. CURSO COMPLETO
Curso completo de regresión logística binaria y multinomial en SPSS. Todos los análisis y la forma de realizarlo, interpretarlo y reportarlo en tu informe de investigación.
Comentarios
Cargando comentarios...