Cosa sono le series di Pandas in Python

Le Series di Pandas rappresentano una delle strutture dati fondamentali della libreria Pandas, una delle più popolari per la manipolazione e l'analisi dei dati in Python.

Le Series offrono una struttura flessibile e potente per gestire dati unidimensionali, come liste di numeri, stringhe o qualsiasi altro tipo di dato.

Una Series in Pandas è essenzialmente un array unidimensionale etichettato, capace di contenere qualsiasi tipo di dato, come interi, stringhe, float e anche oggetti Python. Ogni elemento in una Series è associato a un'etichetta, chiamata indice, che permette un accesso facile e diretto ai dati.

A differenza degli array di NumPy, le Series possono contenere dati di tipo diverso, rendendole molto versatili.

import pandas as pd # Creare una Series con dati predefiniti s = pd.Series([1, 3, 5, 7, 9]) print(s)

Creazione di una Series in Pandas

Ci sono diversi modi per creare una Series in Pandas, a seconda delle esigenze specifiche. Ecco alcuni dei più comuni:

  1. Da una lista o un array: è il metodo più semplice e diretto per creare una Series.

    import pandas as pd dati = [1, 2, 3, 4, 5] serie = pd.Series(dati) print(serie)
  2. Da un dizionario: quando si utilizza un dizionario per creare una Series, le chiavi del dizionario diventano gli indici della Series.

    import pandas as pd dati = {'a': 10, 'b': 20, 'c': 30} serie = pd.Series(dati) print(serie)
  3. Specificando un indice personalizzato: È possibile creare una Series e definire un indice personalizzato.

    import pandas as pd dati = [1, 2, 3, 4, 5] indice = ['a', 'b', 'c', 'd', 'e'] serie = pd.Series(dati, index=indice) print(serie)

    In questo modo, l'indice non sarà più numerico, ma costituito dai valori specificati.

Uno dei punti di forza delle Series è la loro capacità di accedere e manipolare i dati in modo rapido e intuitivo. È possibile accedere ai dati in una Series utilizzando sia l'indice numerico che l'indice etichettato.

import pandas as pd serie = pd.Series([1, 2, 3, 4, 5], index=['a', 'b', 'c', 'd', 'e']) # Accesso tramite indice etichettato print(serie['b']) # Accesso tramite indice numerico print(serie[1])

Le Series supportano anche operazioni di slicing, permettendo di accedere a sottosequenze dei dati:

# Slicing con l'indice etichettato print(serie['b':'d']) # Slicing con l'indice numerico print(serie[1:3])

Inoltre, le Series in Pandas supportano numerose operazioni aritmetiche, che possono essere eseguite direttamente sugli elementi della Series. Queste operazioni vengono applicate a ogni elemento in modo vettoriale, rendendole molto efficienti.