Python: unire file CSV presenti in una directory

Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors
python esercizi

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.
Forse potrebbe interessarti anche:  Python: unire due file Pdf
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')