Saltar al pie de página
USANDO IRONXL PARA PYTHON

Cómo Leer Archivos de Excel en Python

Trabajar con archivos de Excel es un requisito común en tareas de análisis de datos y automatización. Python, con su conjunto extenso de bibliotecas, ofrece varias formas de interactuar con archivos XLSX. En este tutorial, aprenderemos cómo leer archivos de Excel usando IronXL, una biblioteca de Excel para Python.

IronXL: Biblioteca de Excel para Python

IronXL para Python está diseñado para ayudar a los desarrolladores a leer y escribir archivos de Excel fácilmente en Python. No solo 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 de Excel sin instalar Microsoft Excel en tu máquina.

Cuando necesitas importar datos directamente en una hoja de cálculo de Excel, IronXL se presenta como la solución. IronXL hace que la manipulación de hojas de cálculo de Excel sea simple. Ayuda a gestionar datos a través de múltiples hojas en un archivo XLSX fácilmente.

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

Cómo leer archivos de Excel en Python

Los siguientes pasos repasan el proceso involucrado para leer archivos de Excel en Python.

  1. Crea un archivo Python en Visual Studio Code.
  2. Instala la biblioteca de Excel para Python usando pip.
  3. Carga el archivo de Excel que necesitas leer.
  4. Recorre los datos de Excel usando bucles.
  5. Muestra los datos iterados en la consola.

Requisitos previos

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

  • .NET 6.0 SDK: IronXL está construido sobre .NET, requiriendo que el .NET 6.0 SDK esté instalado en tu 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 usará para instalar IronXL.

Configuración de su entorno

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

Abre Visual Studio Code y crea un nuevo archivo Python llamado ReadExcel.py. Este archivo contendrá nuestro script para leer archivos de Excel utilizando IronXL.

Cómo Leer Archivos de Excel en Python: Figura 1

2. Instalación de IronXL

Abre la línea de comandos dentro de Visual Studio Code seleccionando Terminal > New Terminal desde el menú.

Cómo Leer Archivos de Excel en Python: Figura 2

Instala IronXL ejecutando el siguiente comando:

pip install ironxl
pip install ironxl
SHELL

Cómo Leer Archivos de Excel en Python: Figura 3

Escribiendo el código

Ahora, vamos a desglosar el código en secciones y explicar cada parte.

Importación de bibliotecas

from ironxl import *
import sys
from ironxl import *
import sys
PYTHON

Aquí, importamos todo desde la biblioteca ironxl, que proporciona la funcionalidad para trabajar con archivos de Excel. sys se usa para establecer la ruta donde se instala Python, lo cual 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'
sys.prefix = r'C:\Users\User Name\AppData\Local\Programs\Python\Python312'
PYTHON

sys.prefix se asigna a la ruta del directorio de instalación de Python. Este paso preparatorio podría no ser necesario en todos los entornos, pero es esencial en algunas configuraciones para prevenir problemas relacionados con la ruta.

Configuración de la clave de licencia

License.LicenseKey = "License-Key"
License.LicenseKey = "License-Key"
PYTHON

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

Cargando el libro de trabajo

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

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

El ejemplo utiliza "data.xlsx", asumiendo que este archivo está ubicado en el mismo directorio que el script. Si tu archivo está en otro lugar, necesitarás proporcionar la ruta completa del archivo.

Seleccionar una hoja de trabajo

worksheet = workbook.WorkSheets[0]
worksheet = workbook.WorkSheets[0]
PYTHON

Después de cargar el libro de trabajo, el siguiente paso es seleccionar una hoja. La línea workbook.WorkSheets[0] accede a la primera hoja en el archivo de Excel. Las hojas están indexadas comenzando en 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))
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 en la hoja de trabajo["A2:A5"], accedemos a la dirección de cada celda y a su valor de texto. Puedes recuperar información de áreas predefinidas dentro de una hoja.

Realizar cálculos

IronXL proporciona funciones para realizar cálculos simples directamente en rangos de datos dentro de una hoja de Excel. Las siguientes secciones del código demuestran cómo realizar cálculos simples como suma, mínimo y 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)
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 de Excel:

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

Para lograr esto, se utiliza una comprensión de conjunto. Los conjuntos en Python son colecciones que eliminan automáticamente entradas duplicadas, haciéndolos perfectos para encontrar valores únicos. La comprensión itera sobre cada celda en el rango F2:F10, accediendo al contenido de texto de cada celda utilizando cell.Text.

Colocando esta iteración dentro de un conjunto, aseguramos que solo se mantengan los valores únicos.

Contar las ocurrencias de un valor específico

Finalmente, este fragmento cuenta cuántas veces ocurre un valor específico en un rango dado.

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)
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 aparición de un valor específico, etiquetado aquí como specific_value. El código emplea una expresión generadora que itera sobre cada celda en el rango G2:G10, comparando el contenido de texto de la celda con specific_value.

La expresión cell.Text == specific_value evalúa como True para cada celda que contiene el valor objetivo y como False de lo contrario. La función sum suma estos valores Booleanos, tratando True como 1 y False como 0, contando efectivamente el número de veces que ocurre 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

# Setting Python installation path
sys.prefix = r'C:\Users\User Name\AppData\Local\Programs\Python\Python312'

# Setting the license key for IronXL
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)
from ironxl import *
import sys

# Setting Python installation path
sys.prefix = r'C:\Users\User Name\AppData\Local\Programs\Python\Python312'

# Setting the license key for IronXL
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

Resultado

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

Cómo Leer Archivos de Excel en Python: Figura 4

Conclusión

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

IronXL proporciona una API poderosa para trabajar con archivos de Excel en Python, habilitando tareas de análisis de datos, limpieza de datos y visualización sin necesidad de Microsoft Excel.

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

IronXL ofrece una prueba gratuita para que los usuarios exploren sus características, con licencias que comienzan en $799 para aquellos listos para integrar completamente sus capacidades.

Preguntas Frecuentes

¿Cómo puedo leer archivos Excel en Python sin Microsoft Excel?

IronXL te permite leer archivos Excel en Python sin necesitar Microsoft Excel en tu sistema. Puedes cargar libros de trabajo usando WorkBook.Load("data.xlsx") y acceder directamente a las hojas de trabajo y los datos de las celdas.

¿Qué configuración se requiere para usar IronXL para leer archivos Excel en Python?

Para usar IronXL, asegúrate de tener .NET 6.0 SDK, Python 3.0 o superior, y pip instalado. Configura tu entorno de codificación en Visual Studio Code para comenzar a trabajar con archivos Excel.

¿Cómo instalo IronXL en Python?

Instala IronXL ejecutando el comando pip install ironxl en tu terminal. Esto instala la biblioteca, permitiéndote leer y manipular archivos Excel.

¿Puedo realizar operaciones de análisis de datos en archivos Excel usando IronXL?

Sí, IronXL admite varias operaciones de análisis de datos, como calcular sumas, encontrar valores mínimos y máximos, e identificar valores únicos dentro de las hojas de Excel.

¿Cómo puedo encontrar valores únicos en un rango de Excel usando IronXL?

Para encontrar valores únicos, usa una comprensión de conjuntos para iterar sobre el rango de celdas y extraer valores de texto distintos. Este método identifica eficientemente todas las entradas únicas.

¿Es posible contar valores específicos en Excel usando IronXL?

Sí, puedes contar las ocurrencias de un valor específico iterando a través del rango de celdas con una expresión generadora y sumando las instancias donde el texto de la celda coincide con tu valor objetivo.

¿Cuáles son los beneficios de usar IronXL para la manipulación de Excel en Python?

IronXL ofrece una potente API para la manipulación de archivos Excel sin requerir Microsoft Excel. Es ideal para tareas como análisis de datos, limpieza y visualización, mejorando la productividad en proyectos Python.

¿Cómo escribo un script de Python para leer archivos Excel usando IronXL?

Crea un script de Python llamado ReadExcel.py, importa las bibliotecas necesarias, configura tu ruta de Python y usa los métodos de IronXL para cargar e interactuar con libros y datos de Excel.

¿Qué operaciones puedo realizar en los datos de Excel usando IronXL?

IronXL permite varias operaciones como leer valores de celdas, seleccionar hojas de trabajo, calcular sumas, encontrar valores mínimos/máximos y contar ocurrencias específicas en los rangos de datos de Excel.

Curtis Chau
Escritor Técnico

Curtis Chau tiene una licenciatura en Ciencias de la Computación (Carleton University) y se especializa en el desarrollo front-end con experiencia en Node.js, TypeScript, JavaScript y React. Apasionado por crear interfaces de usuario intuitivas y estéticamente agradables, disfruta trabajando con frameworks modernos y creando manuales bien ...

Leer más