Por: Julia Torrez
En este proyecto, realizaremos un análisis exploratorio de datos aplicado a un conjunto de datos simulado que representa métricas de servidores. Utilizaremos Python con las bibliotecas pandas, matplotlib, y seaborn para realizar el análisis y visualización de los datos.
Paso 1: Generación de Datos Ficticios
import pandas as pd
import numpy as np
import random
# Generar datos ficticios de métricas de servidores
np.random.seed(42)
num_servidores = 50
fechas = pd.date_range(start='2023-01-01', end='2023-02-28', freq='D')
data = {
'Fecha': np.random.choice(fechas, num_servidores),
'Uso_CPU': np.random.uniform(10, 90, num_servidores),
'Memoria_RAM': np.random.uniform(20, 80, num_servidores),
'Espacio_Disco': np.random.uniform(30, 100, num_servidores)
}
df_servidores = pd.DataFrame(data)
df_servidores.to_csv('metricas_servidores.csv', index=False)
Este código genera un conjunto de datos ficticios con métricas de servidores, incluyendo el uso de la CPU, la memoria RAM y el espacio en disco, para 50 servidores en un periodo de dos meses.
Paso 2: Análisis Exploratorio de Datos (EDA)
# Cargar datos desde el archivo CSV
df_servidores = pd.read_csv('metricas_servidores.csv')
# Mostrar las primeras filas del DataFrame
print(df_servidores.head())
# Información general del DataFrame
print("\nInformación del DataFrame:")
print(df_servidores.info())
# Estadísticas descriptivas
print("\nEstadísticas Descriptivas:")
print(df_servidores.describe())
# Visualizar la evolución del uso de CPU a lo largo del tiempo
import seaborn as sns
import matplotlib.pyplot as plt
plt.figure(figsize=(12, 6))
sns.lineplot(x='Fecha', y='Uso_CPU', data=df_servidores)
plt.title('Evolución del Uso de CPU a lo largo del tiempo')
plt.xlabel('Fecha')
plt.ylabel('Uso de CPU (%)')
plt.xticks(rotation=45)
plt.show()
RESULTADOS:
Fecha Uso_CPU Memoria_RAM Espacio_Disco
0 2023-02-08 64.424603 71.002315 63.938098
1 2023-02-21 46.039940 46.967040 78.470522
2 2023-01-29 11.061197 25.724607 48.858863
3 2023-01-15 85.376140 42.249095 47.088787
4 2023-02-12 55.063057 60.130475 41.780373
Información del DataFrame:
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 50 entries, 0 to 49
Data columns (total 4 columns):
# Column Non-Null Count Dtype
--- ------ -------------- -----
0 Fecha 50 non-null object
1 Uso_CPU 50 non-null float64
2 Memoria_RAM 50 non-null float64
3 Espacio_Disco 50 non-null float64
dtypes: float64(3), object(1)
memory usage: 1.7+ KB
None
Estadísticas Descriptivas:
Uso_CPU Memoria_RAM Espacio_Disco
count 50.000000 50.000000 50.000000
mean 50.114936 48.401499 64.564548
std 22.816523 16.145332 18.922632
min 11.061197 20.031223 32.313551
25% 32.429714 35.605058 47.999227
50% 52.421056 47.179557 63.429571
75% 67.863159 60.086692 78.732698
max 87.220425 78.302726 99.841834En esta etapa, realizamos un análisis exploratorio de datos. Cargamos los datos, mostramos las primeras filas, información general y estadísticas descriptivas. Además, visualizamos la evolución del uso de CPU a lo largo del tiempo mediante un gráfico de líneas.
Paso 3: Visualización Multivariable
# Visualizar la relación entre Memoria RAM, Espacio en Disco y Uso de CPU
sns.pairplot(df_servidores[['Memoria_RAM', 'Espacio_Disco', 'Uso_CPU']])
plt.suptitle('Relación entre Memoria RAM, Espacio en Disco y Uso de CPU', y=1.02)
plt.show()
CONCLUSIONES
Aquí, utilizamos un gráfico de pares para explorar la relación entre las diferentes métricas (Memoria RAM, Espacio en Disco, Uso de CPU) en un solo gráfico.
Este es un ejemplo básico de análisis exploratorio de datos aplicado a métricas de servidores. Puedes personalizar y extender este proyecto según tus necesidades específicas y la complejidad de tus datos. Recuerda que los datos utilizados son ficticios y con fines educativos. En situaciones reales, trabajarías con datos reales y ajustarías tu análisis en consecuencia.
No hay comentarios:
Publicar un comentario