Por: Julia Torrez
Vamos a desarrollar un proyecto que utiliza las bibliotecas matplotlib, numpy y pandas aplicadas a una base de datos ficticia. Este proyecto se centrará en la visualización de datos y análisis básico utilizando estas poderosas bibliotecas de Python.
Paso 1: Generación de Datos Ficticios
import pandas as pd
import numpy as np
import random
# Generar datos ficticios
np.random.seed(42)
num_personas = 100
data = {
'ID': range(1, num_personas + 1),
'Edad': np.random.randint(18, 60, num_personas),
'Ingresos': np.random.normal(50000, 15000, num_personas)
}
df = pd.DataFrame(data)
df.to_csv('datos.csv', index=False)
Generamos un conjunto de datos ficticios que incluye un identificador (ID), la edad y los ingresos de 100 personas. Los datos se guardan en un archivo CSV llamado
datos.csv.Paso 2: Análisis Básico con Pandas
# Cargar datos desde el archivo CSV
df = pd.read_csv('datos.csv')
# Mostrar las primeras filas del DataFrame
print(df.head())
# Estadísticas descriptivas
print(df.describe())
# Filtrar personas mayores de 30 años
personas_mayores_30 = df[df['Edad'] > 30]
print("\nPersonas mayores de 30 años:")
print(personas_mayores_30)
Resultado :
ID Edad Ingresos
0 1 56 47476.923679
1 2 46 67471.529683
2 3 32 46313.784689
3 4 25 38454.983395
4 5 38 68182.585132
ID Edad Ingresos
count 100.000000 100.000000 100.000000
mean 50.500000 37.910000 50125.408702
std 29.011492 12.219454 14684.490603
min 1.000000 18.000000 12518.612875
25% 25.750000 26.750000 40689.408589
50% 50.500000 38.000000 49719.768392
75% 75.250000 46.250000 60624.020802
max 100.000000 59.000000 82380.927850
Personas mayores de 30 años:
ID Edad Ingresos
0 1 56 47476.923679
1 2 46 67471.529683
2 3 32 46313.784689
4 5 38 68182.585132
5 6 56 68502.452068
.. .. ... ...
93 94 50 55945.609101
95 96 59 42163.077807
96 97 56 50195.508496
97 98 58 55666.543880
98 99 45 50942.368996
98 99 45 50942.368996
En esta parte, cargamos los datos y realizamos un análisis básico utilizando funciones de
pandas para mostrar las primeras filas, estadísticas descriptivas y filtrar personas mayores de 30 años.Paso 3: Visualización con Matplotlib
import matplotlib.pyplot as plt
# Histograma de edades
plt.hist(df['Edad'], bins=20, edgecolor='black')
plt.title('Distribución de Edades')
plt.xlabel('Edad')
plt.ylabel('Frecuencia')
plt.show()
# Diagrama de dispersión entre edad e ingresos
plt.scatter(df['Edad'], df['Ingresos'], alpha=0.5)
plt.title('Relación entre Edad e Ingresos')
plt.xlabel('Edad')
plt.ylabel('Ingresos')
plt.show()
Utilizamos matplotlib para crear un histograma de las edades y un diagrama de dispersión entre la edad y los ingresos.
Paso 4: Análisis Numérico con Numpy
# Calcular la media y la desviación estándar de los ingresos
media_ingresos = np.mean(df['Ingresos'])
std_ingresos = np.std(df['Ingresos'])
print(f"\nMedia de Ingresos: {media_ingresos:.2f}")
print(f"Desviación Estándar de Ingresos: {std_ingresos:.2f}")
RESULTADO:
Media de Ingresos: 50125.41
Desviación Estándar de Ingresos: 14610.88
Aplicamos
numpy para realizar un análisis numérico, calculando la media y la desviación estándar de los ingresos.Este es un ejemplo básico que puedes expandir según tus necesidades y conocimientos. Puedes explorar técnicas más avanzadas de visualización y análisis de datos, y aplicar estas bibliotecas en conjuntos de datos más grandes y reales. Recuerda ajustar y personalizar el proyecto según tus objetivos específicos.

No hay comentarios:
Publicar un comentario