Original article: How to combine multiple CSV files with 8 lines of code
¿Por qué necesitas esto?
Copiar y pegar de forma manual está bien si no tienes muchos archivos con los cuales trabajar.
Pero imagina que tienes más de 100 archivos que juntar — ¿estás dispuesto a hacerlo uno por uno? Hacer esto de forma repetida es tedioso y es muy probable cometer un error.

Si todos los archivos tienen la misma estructura en sus tablas (encabezados y número de columnas iguales), dejemos que este pequeño script de Python haga el trabajo.
Paso 1: Importa los paquetes y selecciona el directorio de trabajo
Cambia "/midir" por tu directorio de trabajo o carpeta deseada.
import os
import glob
import pandas as pd
os.chdir("/midir")
Paso 2: Usa la función glob para encontrar el patrón 'csv'
Encuentra el patrón ('csv') y guarda la lista de los nombres de los archivos en la variable 'todos_los_archivos'. Puedes revisar este link para aprender más sobre expresiones regulares (RegEx).
extension = 'csv'
todos_los_archivos = [i for i in glob.glob('*.{}'.format(extension))]
Paso 3: Combina todos los archivos en la lista y expórtalos como CSV
Usa la librería 'pandas' para concatenar todos los archivos en la lista y exportarlos como CSV. El nombre del archivo resultante será 'combined_csv.csv' y podrás encontrarlo en tu directorio de trabajo o carpeta seleccionada previamente.
#combina todos los archivos de la lista
combinado_csv = pd.concat([pd.read_csv(f) for f in todos_los_archivos ])
#exporta a csv
combinado_csv.to_csv( "combinado_csv.csv", index=False, encoding='utf-8-sig')
El encoding = ‘utf-8-sig’ se agregó para solucionar el problema al exportar idiomas 'Non-English'.
¡Y eso es todo!
Este artículo estuvo inspirado en mi problema del día a día y la estructura del código de una pregunta en stackoverflow. El script utilizado se encuentra documentado en GitHub.
Gracias por leerlo. Inténtalo, diviértete y déjame saber tus comentarios.
Si te gusto mi trabajo, considera seguirme en GitHub, Medium, y Twitter. Asegúrate de darle una estrella en GitHub :P