Introducció

L'Anàlisi Exploratori de Dades (EDA, per les seves sigles en anglès) és una etapa fonamental en el procés d'anàlisi de dades. L'objectiu principal de l'EDA és comprendre les característiques principals del conjunt de dades abans d'aplicar models més complexos. Aquesta etapa inclou la identificació de patrons, la detecció de valors atípics, la comprensió de les relacions entre variables i la verificació d'hipòtesis inicials.

Objectius de l'EDA

  1. Comprendre la Distribució de les Dades: Identificar com es distribueixen les dades i si hi ha valors atípics.
  2. Identificar Relacions entre Variables: Detectar correlacions i altres relacions entre les variables.
  3. Detectar Valors Atípics: Identificar dades que no segueixen el patró general.
  4. Verificar Hipòtesis Inicials: Comprovar si les hipòtesis inicials sobre les dades són correctes.
  5. Preparar les Dades per a l'Anàlisi Posterior: Netejar i transformar les dades per a l'anàlisi més avançada.

Passos de l'EDA

  1. Resum Estadístic

El primer pas en l'EDA és obtenir un resum estadístic de les dades. Això inclou mesures com la mitjana, la mediana, la desviació estàndard, els percentils, etc.

import pandas as pd

# Carregar el conjunt de dades
df = pd.read_csv('dades.csv')

# Obtenir un resum estadístic
resum_estadistic = df.describe()
print(resum_estadistic)

  1. Visualització de Dades

La visualització de dades és crucial per a l'EDA. Les gràfiques poden ajudar a identificar patrons i relacions que no són evidents en les taules de dades.

Histogrammes

Els histogrammes són útils per veure la distribució d'una variable.

import matplotlib.pyplot as plt

# Crear un histograma per a una variable específica
plt.hist(df['variable'], bins=30, edgecolor='black')
plt.title('Distribució de la Variable')
plt.xlabel('Valor')
plt.ylabel('Freqüència')
plt.show()

Gràfiques de Dispersió

Les gràfiques de dispersió són útils per veure la relació entre dues variables.

# Crear una gràfica de dispersió
plt.scatter(df['variable1'], df['variable2'])
plt.title('Relació entre Variable1 i Variable2')
plt.xlabel('Variable1')
plt.ylabel('Variable2')
plt.show()

  1. Detecció de Valors Atípics

Els valors atípics poden distorsionar els resultats de l'anàlisi. És important identificar-los i decidir com tractar-los.

# Identificar valors atípics utilitzant el Z-score
from scipy import stats

z_scores = stats.zscore(df['variable'])
valors_atipics = df[(z_scores > 3) | (z_scores < -3)]
print(valors_atipics)

  1. Anàlisi de Correlació

L'anàlisi de correlació ajuda a identificar la força i la direcció de la relació entre dues variables.

# Calcular la matriu de correlació
correlacio = df.corr()
print(correlacio)

# Visualitzar la matriu de correlació
import seaborn as sns

sns.heatmap(correlacio, annot=True, cmap='coolwarm')
plt.title('Matriu de Correlació')
plt.show()

Exercici Pràctic

Exercici 1: Anàlisi Exploratori de Dades d'un Conjunt de Dades de Vendes

  1. Carrega el conjunt de dades de vendes des d'un fitxer CSV.
  2. Obté un resum estadístic del conjunt de dades.
  3. Crea un histograma per a la variable 'quantitat_venda'.
  4. Crea una gràfica de dispersió per veure la relació entre 'preu' i 'quantitat_venda'.
  5. Identifica els valors atípics en la variable 'quantitat_venda' utilitzant el Z-score.
  6. Calcula i visualitza la matriu de correlació per a totes les variables del conjunt de dades.

Solució

import pandas as pd
import matplotlib.pyplot as plt
from scipy import stats
import seaborn as sns

# 1. Carrega el conjunt de dades de vendes
df = pd.read_csv('vendes.csv')

# 2. Obté un resum estadístic
resum_estadistic = df.describe()
print(resum_estadistic)

# 3. Crea un histograma per a la variable 'quantitat_venda'
plt.hist(df['quantitat_venda'], bins=30, edgecolor='black')
plt.title('Distribució de la Quantitat de Venda')
plt.xlabel('Quantitat de Venda')
plt.ylabel('Freqüència')
plt.show()

# 4. Crea una gràfica de dispersió per veure la relació entre 'preu' i 'quantitat_venda'
plt.scatter(df['preu'], df['quantitat_venda'])
plt.title('Relació entre Preu i Quantitat de Venda')
plt.xlabel('Preu')
plt.ylabel('Quantitat de Venda')
plt.show()

# 5. Identifica els valors atípics en la variable 'quantitat_venda' utilitzant el Z-score
z_scores = stats.zscore(df['quantitat_venda'])
valors_atipics = df[(z_scores > 3) | (z_scores < -3)]
print(valors_atipics)

# 6. Calcula i visualitza la matriu de correlació
correlacio = df.corr()
print(correlacio)

sns.heatmap(correlacio, annot=True, cmap='coolwarm')
plt.title('Matriu de Correlació')
plt.show()

Conclusió

L'Anàlisi Exploratori de Dades és una etapa essencial en qualsevol projecte d'analítica. Permet comprendre millor les dades, identificar problemes potencials i preparar les dades per a anàlisis més avançades. Mitjançant l'ús de resums estadístics, visualitzacions i tècniques de detecció de valors atípics, podem obtenir una visió clara i detallada del nostre conjunt de dades.

Curs d'Analytics: Eines i Tècniques per a la Presa de Decisions

Mòdul 1: Introducció a l'Analítica

Mòdul 2: Eines d'Analítica

Mòdul 3: Tècniques de Recopilació de Dades

Mòdul 4: Anàlisi de Dades

Mòdul 5: Interpretació de Dades i Presa de Decisions

Mòdul 6: Casos Pràctics i Exercicis

Mòdul 7: Avanços i Tendències en Analítica

Mòdul 8: Recursos Addicionals i Certificacions

© Copyright 2024. Tots els drets reservats