Introducció

Pandas és una biblioteca essencial per a la manipulació i anàlisi de dades en Python. Proporciona estructures de dades fàcils d'utilitzar i eines de manipulació de dades eficients. En aquest tema, aprendrem a utilitzar Pandas per carregar, manipular i analitzar dades.

Continguts

  1. Instal·lació de Pandas
  2. Estructures de Dades en Pandas
  3. Carregar Dades amb Pandas
  4. Manipulació de Dades
  5. Agrupació i Agregació
  6. Tractament de Valors Nuls
  7. Exercicis Pràctics

  1. Instal·lació de Pandas

Per instal·lar Pandas, pots utilitzar pip:

pip install pandas

  1. Estructures de Dades en Pandas

Pandas proporciona dues estructures de dades principals:

  • Series: Una sèrie és una estructura de dades unidimensional que pot contenir qualsevol tipus de dades.
  • DataFrame: Un DataFrame és una estructura de dades bidimensional amb etiquetes d'eix (files i columnes).

Exemple de Series

import pandas as pd

s = pd.Series([1, 3, 5, 7, 9])
print(s)

Exemple de DataFrame

data = {
    'Nom': ['Anna', 'Bernat', 'Carla'],
    'Edat': [23, 35, 45],
    'Ciutat': ['Barcelona', 'Madrid', 'València']
}

df = pd.DataFrame(data)
print(df)

  1. Carregar Dades amb Pandas

Pandas pot carregar dades de diversos formats, com ara CSV, Excel, SQL, etc.

Carregar un fitxer CSV

df = pd.read_csv('data.csv')
print(df.head())  # Mostra les primeres 5 files

Carregar un fitxer Excel

df = pd.read_excel('data.xlsx')
print(df.head())

  1. Manipulació de Dades

Selecció de Dades

  • Seleccionar una columna:
edat = df['Edat']
print(edat)
  • Seleccionar múltiples columnes:
subset = df[['Nom', 'Edat']]
print(subset)
  • Seleccionar files per índex:
primera_fila = df.iloc[0]
print(primera_fila)
  • Seleccionar files per condició:
majors_30 = df[df['Edat'] > 30]
print(majors_30)

Modificar Dades

  • Afegir una nova columna:
df['Salari'] = [50000, 60000, 70000]
print(df)
  • Modificar valors:
df.loc[0, 'Edat'] = 24
print(df)

Eliminar Dades

  • Eliminar una columna:
df = df.drop(columns=['Salari'])
print(df)
  • Eliminar files:
df = df.drop(index=0)
print(df)

  1. Agrupació i Agregació

Pandas permet agrupar dades i aplicar funcions d'agregació com sum, mean, count, etc.

Agrupar per una columna i calcular la mitjana

grouped = df.groupby('Ciutat').mean()
print(grouped)

Agrupar per múltiples columnes

grouped = df.groupby(['Ciutat', 'Edat']).size()
print(grouped)

  1. Tractament de Valors Nuls

Identificar valors nuls

print(df.isnull())
print(df.isnull().sum())

Eliminar valors nuls

df = df.dropna()
print(df)

Omplir valors nuls

df = df.fillna(0)
print(df)

  1. Exercicis Pràctics

Exercici 1

Carrega un fitxer CSV anomenat empleats.csv que conté les següents columnes: Nom, Edat, Departament, Salari. Mostra les primeres 5 files.

Solució

df = pd.read_csv('empleats.csv')
print(df.head())

Exercici 2

Selecciona només les columnes Nom i Salari del DataFrame df.

Solució

subset = df[['Nom', 'Salari']]
print(subset)

Exercici 3

Agrupa les dades per Departament i calcula la mitjana de Salari per cada departament.

Solució

grouped = df.groupby('Departament')['Salari'].mean()
print(grouped)

Exercici 4

Identifica i elimina les files que contenen valors nuls en qualsevol columna.

Solució

df = df.dropna()
print(df)

Exercici 5

Afegeix una nova columna Bonus al DataFrame df amb un valor de 5000 per a tots els empleats.

Solució

df['Bonus'] = 5000
print(df)

Conclusió

En aquesta secció, hem après a utilitzar la biblioteca Pandas per carregar, manipular i analitzar dades. Hem vist com treballar amb les estructures de dades Series i DataFrame, com carregar dades des de diferents formats, i com realitzar operacions de manipulació i agregació. Els exercicis pràctics proporcionats ajuden a consolidar els conceptes apresos. En el proper tema, explorarem la visualització de dades amb Matplotlib.

Curs de Programació en Python

Mòdul 1: Introducció a Python

Mòdul 2: Estructures de Control

Mòdul 3: Funcions i Mòduls

Mòdul 4: Estructures de Dades

Mòdul 5: Programació Orientada a Objectes

Mòdul 6: Gestió de Fitxers

Mòdul 7: Gestió d'Errors i Excepcions

Mòdul 8: Temes Avançats

Mòdul 9: Proves i Depuració

Mòdul 10: Desenvolupament Web amb Python

Mòdul 11: Ciència de Dades amb Python

Mòdul 12: Projecte Final

© Copyright 2024. Tots els drets reservats