sábado, 13 de enero de 2024

Python en Servidores de Datos

 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.841834


En 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

Telecomunicaciones VS Informática

  Por: Julia Torrez Proyecto de Análisis de Evaluación Sumativa para Estudiantes de Teleinformática con Pensamiento Computacional 1. Definic...