Con il seguente script saremo in grado di unire tutti i files di tipo CSV presenti in una directory.
Prerequisiti:
La libreria Pandas
Quindi se non è già presente, procederemo prima alla sua installazione nel seguente modo:
pip install pandas
Mettiamo tutti i files CSV che vogliamo unire nella directory contenente lo script ed eseguiamolo.
L’output sarà il file CSV “unione.csv”, presente nella stessa directory.
Il modulo glob
La funzione
glob.iglob
restituisce un iteratore sull’elenco di percorsi che corrispondono al modello specificato.ESEMPIO
Troviamo tutti i files di tipo CSV nella directory “C:\\Users\\files\\mieiCSV”:
import glob
directory = "C:\\Users\\files\\mieiCSV"
for path in glob.iglob(f'{directory}/*.csv'):
print(path)
Lo script:
import glob
import pandas as pd
extension = 'csv'
all_filenames = [i for i in glob.glob('*.{}'.format(extension))]
combined_csv = pd.concat([pd.read_csv(f) for f in all_filenames ])
combined_csv.to_csv( "unione.csv", index=False, encoding='utf-8-sig')