Suddividere i Dati in Blocchi
Scorri per mostrare il menu
La gestione di grandi set di dati che non possono essere caricati interamente in memoria richiede un approccio diverso rispetto al semplice caricamento dell'intero file. Quando si tenta di caricare un file CSV molto grande in pandas con la funzione read_csv standard, si possono incontrare errori di memoria o rallentamenti significativi. Per evitare ciò, è possibile suddividere i dati in blocchi più piccoli e gestibili, elaborando ciascuno in modo indipendente. Questa tecnica è particolarmente utile in scenari come:
- Analisi di grandi file di log;
- Elaborazione di esportazioni di dati da database;
- Gestione di dati di serie temporali raccolti su lunghi periodi.
La suddivisione dei dati in blocchi consente di elaborare solo una piccola parte del set di dati alla volta, mantenendo basso l'utilizzo della memoria e permettendo di lavorare in modo efficiente anche su hardware modesto. Ad esempio, se è necessario calcolare statistiche o filtrare righe da un file con milioni di record, la lettura a blocchi permette di elaborare ogni parte e, se necessario, aggregare i risultati man mano. Questo approccio è utile anche quando si desidera trasmettere dati in una pipeline di machine learning o eseguire una pulizia incrementale dei dati.
1234567891011import pandas as pd # Assume 'large_file.csv' is a very large CSV file url = "https://content-media-cdn.codefinity.com/b8f3c268-0e60-4ff0-a3ea-f145595033d8/section1/large_file.csv" chunk_size = 100 # Number of rows per chunk # To read.csv() from directory you use same syntax for chunk in pd.read_csv(url, chunksize=chunk_size): # Count rows in this chunk print("Chunk has", len(chunk), "rows")
Grazie per i tuoi commenti!
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione