Saltar al contenido

Combina dos archivos CSV en uno

  • Utilidades

Combina dos archivos CSV en uno

Combina fácilmente online dos archivos CSV en uno

Sección titulada «Combina fácilmente online dos archivos CSV en uno»

[combinar_archivos_csv]


Combina fácilmente dos archivos CSV en uno usando Python

Sección titulada «Combina fácilmente dos archivos CSV en uno usando Python»

En este artículo, exploraremos cómo utilizar un programa Python para combinar de manera sencilla dos archivos CSV separados por punto y coma. Este programa es ideal cuando necesitamos fusionar datos de dos archivos diferentes basados en una columna común. Utilizaremos la potente biblioteca pandas de Python para manipular los archivos CSV y generar un nuevo archivo combinado.


El programa que vamos a desarrollar nos permitirá combinar dos archivos CSV: uno principal y otro secundario. Ambos archivos deben tener una columna llamada “codigocomun” que actuará como clave de combinación. El objetivo es agregar las líneas del archivo secundario al archivo principal, manteniendo solo las líneas que tengan un valor coincidente en la columna “codigocomun”.

Para empezar, necesitaremos tener instalado Python en nuestro sistema. También necesitaremos la biblioteca pandas, que podemos instalar fácilmente utilizando el gestor de paquetes pip.

pip install pandas

Una vez que tengamos todo configurado, podemos proceder a ejecutar el programa. Al iniciarlo, se abrirá una interfaz gráfica donde podremos seleccionar los archivos CSV correspondientes. Primero, elegiremos el archivo principal y luego el archivo secundario.

combina-dos-archivos-csv.jpg

Una vez seleccionados los archivos, el programa utilizará la biblioteca pandas para cargarlos en DataFrames, una estructura de datos tabular muy versátil. A continuación, se realizará la combinación de los DataFrames utilizando la columna “codigocomun” como clave. Esto asegurará que solo se agreguen las líneas del archivo secundario que coincidan con el archivo principal.

Una vez combinados los DataFrames, el programa generará un nuevo archivo CSV que contendrá todas las líneas del archivo principal y las líneas del archivo secundario que tengan un valor correspondiente en la columna “codigocomun”. Podremos elegir la ubicación y el nombre del archivo combinado antes de guardarlo.

Con este programa Python y la biblioteca pandas, hemos simplificado el proceso de combinación de archivos CSV. Ahora podemos fusionar datos de manera rápida y eficiente, ahorrando tiempo y esfuerzo en comparación con métodos manuales o como excel. La interfaz gráfica proporciona una experiencia fácil de usar, lo que lo convierte en una herramienta accesible para usuarios de todos los niveles de habilidad.

Python y pandas nos brindan un poderoso conjunto de herramientas para trabajar con datos, y este programa es solo un ejemplo de lo que se puede lograr. Experimenta y adapta este código según tus necesidades específicas.

¡Espero que encuentres útil esta herramienta de combinación de archivos CSV!

import tkinter as tk from tkinter import filedialog, messagebox import pandas as pd def combinar_archivos(): # Obtener la ruta de los archivos primario y secundario seleccionados ruta_primario = filedialog.askopenfilename( title=“Seleccionar archivo primario”, filetypes=[(“Archivos CSV”, “*.csv”)]) ruta_secundario = filedialog.askopenfilename( title=“Seleccionar archivo secundario”, filetypes=[(“Archivos CSV”, “*.csv”)]) if ruta_primario and ruta_secundario: try: # Cargar archivos CSV en DataFrames df_primario = pd.read_csv(ruta_primario, sep=’;’) df_secundario = pd.read_csv(ruta_secundario, sep=’;’) # Combinar los DataFrames basados en la columna “codigocomun” df_resultado = pd.merge( df_primario, df_secundario, on=‘codigocomun’, how=‘left’) # Guardar el DataFrame combinado en un nuevo archivo CSV ruta_salida = filedialog.asksaveasfilename( title=“Guardar archivo combinado”, defaultextension=“.csv”, filetypes=[(“Archivos CSV”, “*.csv”)]) if ruta_salida: df_resultado.to_csv(ruta_salida, sep=’;’, index=False) messagebox.showinfo( “Completado”, “El archivo combinado ha sido creado exitosamente.”) else: messagebox.showwarning( “Advertencia”, “No se seleccionó una ubicación de archivo válida.”) except Exception as e: messagebox.showerror(“Error”, str(e)) else: messagebox.showwarning( “Advertencia”, “No se seleccionaron archivos válidos.”) # Crear la ventana principal ventana = tk.Tk() ventana.title(“Combinador de archivos CSV”) ventana.geometry(“400x200”) # Descripción del programa lbl_descripcion = tk.Label(ventana, text=“Este programa combina dos archivos CSV separados por punto y coma.\n” “Selecciona el archivo primario y el archivo secundario y luego haz clic en el botón ‘Combinar’.\n” “Las líneas del archivo secundario que coincidan con la columna ‘codigocomun’ en el archivo primario\n” “serán agregadas al archivo primario en un nuevo archivo CSV.”) lbl_descripcion.pack() # Etiqueta y botón para seleccionar el archivo primario lbl_primario = tk.Label(ventana, text=“Archivo primario:”) lbl_primario.pack() btn_primario = tk.Button( ventana, text=“Seleccionar archivo”, command=combinar_archivos) btn_primario.pack() # Etiqueta y botón para seleccionar el archivo secundario lbl_secundario = tk.Label(ventana, text=“Archivo secundario:”) lbl_secundario.pack() btn_secundario = tk.Button( ventana, text=“Seleccionar archivo”, command=combinar_archivos) btn_secundario.pack() ventana.mainloop()