Immagina di essere un esploratore spaziale e che i dati siano la tua mappa del cielo stellato. È ingombrante, confusa e assolutamente necessaria. Dopo un'accurata filtrazione e analisi, questi dati richiedono un'organizzazione e una conservazione in un formato facile da leggere. Ed è qui che entra in scena il nostro eroe: l'esportazione dei dati in Excel. Ti consente di condividere le tue scoperte con i colleghi o preparare report per una riunione importante. In un mondo dove i dati sono il nuovo petrolio, la capacità di creare report con poche righe di codice potrebbe valere milioni.
1. Aspetti fondamentali dell'esportazione dei dati
L'esportazione dei dati in Excel non è solo una conversione da un
formato all'altro. È un'opportunità per personalizzare i report in modo che
siano comodi e chiari. Come diceva un mio amico programmatore:
"Python può fare magie, ma anche Harry Potter ha bisogno della bacchetta".
Nel nostro caso, la bacchetta è il metodo to_excel
della libreria
pandas
.
Basi di to_excel
Iniziamo con un esempio semplice di esportazione di dati da un
DataFrame
in un file Excel. Supponiamo di avere un
DataFrame
con i dati dei partecipanti a una maratona:
import pandas as pd
# Creiamo un DataFrame
data = {
'Nome': ['Anna', 'Boris', 'Viktor', 'Galina'],
'Età': [29, 34, 22, 28],
'Città': ['Mosca', 'San Pietroburgo', 'Kazan', 'Novosibirsk'],
'Tempo finale': ['03:15:30', '03:45:10', '03:25:45', '03:50:05']
}
df = pd.DataFrame(data)
# Esportiamo il DataFrame in Excel
df.to_excel('marathon_participants.xlsx', index=False)
In questo esempio abbiamo creato un semplice DataFrame
ed esportato i dati in un file marathon_participants.xlsx
.
Nota che abbiamo impostato il parametro index=False
per non
esportare gli indici del DataFrame
in Excel se non necessari.
Aggiungere formattazione e stili
Passiamo al livello successivo: aggiungere stile. Perché chi ha detto che i
dati non possono essere eleganti? Con la libreria pandas
e
openpyxl
, è facile formattare tabelle e aggiungere stili.
import pandas as pd
from openpyxl import Workbook
# Creiamo un DataFrame
data = {
'Nome': ['Anna', 'Boris', 'Viktor', 'Galina'],
'Età': [29, 34, 22, 28],
'Città': ['Mosca', 'San Pietroburgo', 'Kazan', 'Novosibirsk'],
'Tempo finale': ['03:15:30', '03:45:10', '03:25:45', '03:50:05']
}
df = pd.DataFrame(data)
# Scriviamo in Excel con formattazione
with pd.ExcelWriter('styled_marathon.xlsx', engine='openpyxl') as writer:
df.to_excel(writer, index=False, sheet_name='Partecipanti')
worksheet = writer.sheets['Partecipanti']
for col in worksheet.columns:
max_length = 0
column = col[0].column_letter # otteniamo l'indicazione alfabetica della colonna
for cell in col:
try:
if len(str(cell.value)) > max_length:
max_length = len(cell.value)
except:
pass
adjusted_width = (max_length + 2) * 1.2
worksheet.column_dimensions[column].width = adjusted_width
In questo esempio non solo esportiamo i dati, ma adattiamo
la larghezza delle colonne in base al contenuto per un aspetto più ordinato in Excel.
Usiamo openpyxl
per accedere al foglio e applicare lo stile.
Gestire più fogli
Creare report con più fogli può sembrare una missione da supereroe, ma in realtà è piuttosto semplice. Immagina di voler salvare i dati di diverse gare annuali su fogli separati.
import pandas as pd
# Dati per anni diversi
data_2022 = {
'Nome': ['Dmitry', 'Elena'],
'Età': [30, 29],
'Città': ['Omsk', 'Vladivostok'],
'Tempo finale': ['03:20:05', '03:35:40']
}
data_2023 = {
'Nome': ['Igor', 'Katerina'],
'Età': [31, 27],
'Città': ['Chelyabinsk', 'Ekaterinburg'],
'Tempo finale': ['03:29:10', '03:40:20']
}
df_2022 = pd.DataFrame(data_2022)
df_2023 = pd.DataFrame(data_2023)
# Scriviamo i dati su fogli diversi
with pd.ExcelWriter('marathon_data.xlsx') as writer:
df_2022.to_excel(writer, sheet_name='2022', index=False)
df_2023.to_excel(writer, sheet_name='2023', index=False)
Questo codice crea un file marathon_data.xlsx
con due fogli contenenti i dati di due anni distinti. È molto
comodo per separare i dati per anno, progetto o altre categorie.
2. C'è sempre qualcosa da migliorare
Cerca di pensare a come l'automazione dell'esportazione potrebbe essere integrata in processi più complessi del tuo progetto. Forse vorresti aggiungere la creazione automatica di grafici dopo l'esportazione? O integrare i report con un'interfaccia web per un accesso più comodo?
In ogni caso, l'esportazione di dati in Excel è solo l'inizio del percorso verso la creazione di report belli e informativi, che ti renderanno una star dell'analisi sul tuo posto di lavoro o nello studio!
Adesso hai gli strumenti per automatizzare l'esportazione dei dati e sai come rendere i tuoi report in Excel più leggibili e presentabili. Quindi avanti, e che i tuoi dati lavorino sempre per te!
GO TO FULL VERSION