USO DE IRONXL FOR .NET

Cómo leer archivos Excel en Python

Actualizado 6 de junio, 2024
Compartir:

Trabajar con archivos Excel es un requisito habitual en las tareas de análisis y automatización de datos. Python, con su amplio conjunto de bibliotecasofrece varias formas de interactuar con archivos XLSX. En este tutorial, aprenderemos a leer archivos de Excel utilizando IronXL una biblioteca de Python para Excel.

IronXL: Biblioteca Python Excel

IronXL Python está diseñado para ayudar a los desarrolladores a leer y escribir archivos Excel fácilmente en Python. No sólo puedes escribir archivos de Excel, sino que también puedes trabajar con varias hojas de Excel de una sola vez. Esta biblioteca es perfecta para escribir archivos Excel sin instalar Microsoft Excel en su máquina.

Cuando necesites importar datos directamente a una hoja de cálculo de Excel, IronXL viene al rescate. IronXL simplifica el manejo de las hojas de cálculo de Excel. Ayuda a gestionar fácilmente los datos de varias hojas de un archivo XLSX.

Veamos cómo podemos leer archivos Excel en Python utilizando IronXL.

Cómo leer archivos Excel en Python

Los siguientes pasos repasan el proceso de lectura de archivos Excel en Python.

  1. Crear un archivo Python en código Visual Studio.
  2. Instala la biblioteca Excel de Python con pip.
  3. Cargar el archivo Excel que necesitamos leer
  4. Iterar datos de Excel mediante bucles
  5. Mostrar datos iterados en la consola

Requisitos previos

Antes de sumergirte en el tutorial, asegúrate de tener instalados en tu sistema los siguientes requisitos previos:

  • .NET 6.0 SDK: IronXL se basa en .NET, por lo que requiere la instalación del SDK .NET 6.0 en su sistema.
  • Python 3.0+: El tutorial asume que tienes Python 3.0 o superior instalado.
  • pip: Asegúrate de que pip, el instalador de paquetes de Python, está instalado, ya que se utilizará para instalar IronXL.

Configuración del entorno

1. Creación de un archivo en Visual Studio Code

Abra Visual Studio Code y cree un nuevo archivo Python llamado ReadExcel.py. Este archivo contendrá nuestro script para leer archivos Excel usando IronXL.

Cómo leer archivos Excel en Python: Figura 1

2. Instalación de IronXL

Abra la línea de comandos en Visual Studio Code seleccionando en el menú Terminal > Nueva terminal.

Cómo leer archivos Excel en Python: Figura 2

Instale IronXL ejecutando el siguiente comando:

 pip install IronXL

Cómo leer archivos Excel en Python: Figura 3

Escribir el código

Ahora, dividamos el código en secciones y expliquemos cada parte.

Importar bibliotecas

from ironxl import *     import sys
PYTHON

Aquí, importamos todo de la librería ironxl, que proporciona la funcionalidad para trabajar con ficheros Excel. sys se utiliza para establecer la ruta donde está instalado Python, que es necesario para que IronXL funcione correctamente.

Configuración de la ruta de instalación de Python

sys.prefix = r'C:\Users\User Name\AppData\Local\Programs\Python\Python312'
PYTHON

sys.prefix se le asigna la ruta a su directorio de instalación de Python. Es un paso preparatorio que puede no ser necesario en todos los entornos, pero que es esencial en algunas configuraciones para evitar problemas relacionados con la ruta.

Configuración de la clave de licencia

License.LicenseKey = "License-Key";
PYTHON

La biblioteca IronXL requiere un clave de licencia para desbloquear todas sus funciones. Esta línea de código License.LicenseKey = "License-Key"; es donde usted insertaría su clave de licencia obtenida. Sin una licencia válida, IronXL no funcionará.

Cargar el libro de trabajo

workbook = WorkBook.Load("data.xlsx")
PYTHON

Esta sección del script, workbook = WorkBook.Load("datos.xlsx"), muestra cómo cargar un libro de Excel. WorkBook.Load es un método provisto por IronXL para abrir un archivo Excel existente, especificado por su ruta de archivo.

El ejemplo utiliza "data.xlsx ", suponiendo que este archivo se encuentra en el mismo directorio que el script. Si el archivo se encuentra en otro lugar, deberá indicar la ruta completa del archivo.

Seleccionar una hoja de cálculo

worksheet = workbook.WorkSheets[0]
PYTHON

Después de cargar el libro de trabajo, el siguiente paso es seleccionar una hoja de trabajo. El workbook.WorkSheets[0] accede a la primera hoja de cálculo del archivo Excel. Las hojas de cálculo se indexan empezando por 0, por lo que este fragmento de código selecciona efectivamente la primera hoja.

Lectura y visualización de datos

print("Sample data from A2:A5:")
for cell in worksheet["A2:A5"]:
    print("Cell {} has value '{}'".format(cell.AddressString, cell.Text))
PYTHON

Esta parte del script ejemplifica cómo leer y mostrar datos de celdas específicas. Al iterar sobre un rango de celdas para las celdas de la hoja de cálculo["A2:A5"], podemos acceder a la dirección y al valor del texto de cada celda. Puede recuperar información de áreas predefinidas dentro de una hoja.

Realización de cálculos

IronXL proporciona funciones para realizar cálculos sencillos directamente en rangos de datos dentro de una hoja de Excel. Las siguientes secciones del código demuestran cómo realizar cálculos sencillos como la suma, el mínimo y el máximo en datos dentro de un rango especificado.

total_sum = worksheet["B2:B10"].Sum()
print("Total Sum of B2:B10: ", total_sum)
minimum_value = worksheet["C2:C10"].Min()
print("Minimum Value in C2:C10: ", minimum_value)
maximum_value = worksheet["D2:D10"].Max()
print("Maximum Value in D2:D10: ", maximum_value)
PYTHON

Encontrar valores únicos

Esta parte del script demuestra cómo identificar valores únicos dentro de un rango especificado de una hoja Excel:

unique_values = set(cell.Text for cell in worksheet["F2:F10"])
print("Unique Values in F2:F10: ", unique_values)
PYTHON

Para lograrlo, se utiliza la comprensión de conjuntos. Los conjuntos en Python son colecciones que eliminan automáticamente las entradas duplicadas, lo que las hace perfectas para encontrar valores únicos. La comprensión itera sobre cada celda en el rango F2:F10, accediendo al contenido de texto de cada celda usando cell.Text.

Al colocar esta iteración dentro de un conjunto, nos aseguramos de que sólo se conservan los valores únicos.

Recuento de ocurrencias de un valor específico

Por último, este fragmento cuenta cuántas veces aparece un valor específico en un intervalo determinado.

specific_value = '5'  # Adjust this as needed based on your data
occurrences = sum(cell.Text == specific_value for cell in worksheet["G2:G10"])
print(f"Occurrences of value '{specific_value}' in G2:G10: ", occurrences)
PYTHON

El objetivo aquí es cuantificar la ocurrencia de un valor específico, etiquetado aquí como valor_específico. El código emplea una expresión generadora que itera sobre cada celda del rango G2:G10, comparando el contenido de texto de la celda con valor_específico.

La expresión célula.Texto ==valor_específico se evalúa como Verdadero para cada celda que contenga el valor objetivo y Falso en caso contrario. La función suma suma estos valores booleanos, tratando Verdadero como 1 y Falso como 0, contando efectivamente el número de veces que aparece el valor específico.

Ejemplo de código completo

Aquí está el código completo para una mejor comprensión del código:

from ironxl import *     import sys
sys.prefix = r'C:\Users\User Name\AppData\Local\Programs\Python\Python312'
License.LicenseKey = "License-Key";
# Load the workbook
workbook = WorkBook.Load("data.xlsx")
# Select the worksheet at index 0
worksheet = workbook.WorkSheets[0]
# Display values in a specific range as an example
print("Sample data from A2:A5:")
for cell in worksheet["A2:A5"]:
    print("Cell {} has value '{}'".format(cell.AddressString, cell.Text))
# Calculate the sum of values in a different range
total_sum = worksheet["B2:B10"].Sum()
print("Total Sum of B2:B10: ", total_sum)
# Calculate the minimum value in another range
minimum_value = worksheet["C2:C10"].Min()
print("Minimum Value in C2:C10: ", minimum_value)
# Calculate the maximum value in a different range
maximum_value = worksheet["D2:D10"].Max()
print("Maximum Value in D2:D10: ", maximum_value)
# Find unique values in a specified range
unique_values = set(cell.Text for cell in worksheet["F2:F10"])
print("Unique Values in F2:F10: ", unique_values)
# Count occurrences of a specific value in a different range
specific_value = '5'  # Adjust this as needed based on your data
occurrences = sum(cell.Text == specific_value for cell in worksheet["G2:G10"])
print(f"Occurrences of value '{specific_value}' in G2:G10: ", occurrences)
PYTHON

Salida

Después de ejecutar el fichero Python ReadExcel.py, verás en tu consola la siguiente salida, que refleja los resultados de las operaciones realizadas por el script sobre los datos de Excel.

Cómo leer archivos Excel en Python: Figura 4

Conclusión

En este tutorial, hemos explorado cómo configurar un entorno Python para utilizar IronXL para leer archivos de Excel. Hemos cubierto la instalación del software necesario, la escritura del script para cargar un libro de Excel, seleccionar una hoja de cálculo, leer los datos, realizar operaciones básicas de análisis de datos y mucho más.

IronXL proporciona una potente API para trabajar con archivos Excel en Python, lo que permite realizar tareas de análisis, limpieza y visualización de datos sin necesidad de Microsoft Excel.

Ya sea que esté analizando datos de ventas, importando datos para informes o creando visualizaciones a partir de datos de Excel, IronXL ofrece una solución sólida para gestionar archivos de Excel en aplicaciones Python.

IronXL proporciona un prueba gratuita para que los usuarios exploren sus funciones, con licencias a partir de 749 dólares para quienes estén preparados para integrar plenamente sus capacidades.

< ANTERIOR
Paquete Python para archivos Excel (sin usar Interop)
SIGUIENTE >
Cómo visualizar un archivo Excel en Python

¿Listo para empezar? Versión: 2024.7 recién publicada

Descarga gratuita de pip Ver licencias >
123