Leer archivos XLSX con Python y Pandas
Pandas es una biblioteca muy robusta y optimizada que ayuda a manejar datos de manera eficiente, realizar operaciones sobre esos datos con facilidad y analizarlos con todo tipo de diagramas y gráficos. Las operaciones comunes como la fusión, la concatenación y la remodelación se pueden realizar muy fácilmente usando pandas.
Pandas también admite la lectura de archivos y el almacenamiento de datos dentro de los archivos en varios objetos, como matrices y DataFrames
. Uno de esos archivos es .xlsx
. Los archivos .xlsx
son archivos de hoja de cálculo de formato XML abierto de Microsoft Excel que están comprimidos y basados en XML. Este artículo hablará sobre cómo leer archivos .xlsx
usando pandas.
Lectura de archivos .xlsx
usando pandas
en Python
Para leer archivos .xlsx
usando pandas
, podemos usar la función read_excel()
. Esta función lee un archivo de Excel en un pandas DataFrame
. Y podemos usar esta función para leer archivos xlsx
, xls
, xlsm
, xlsb
, odf
, ods
y odt
. Dado que los archivos de Excel pueden contener varias hojas, esta función puede leer una o varias hojas.
La función read_excel()
tiene un par de parámetros. Discutiremos algunos de los principales.
io
: este parámetro puede serstr
,bytes
,ExcelFile
,xlrd.Book
,path object
ufile-like object
. Es esencialmente el archivo o el objeto que debe leerse. También se puede pasar una ruta de archivo válida en forma de cadena a este parámetro.sheet_name
: este parámetro puede serstr
,int
,list
oNone
. El valor predeterminado es0
. Dado que los archivos de Excel se componen de hojas, podemos especificar una sola hoja o un montón de hojas para leer. No solo podemos usar índices enteros (2
,0
,[1, 3, 7]
) sino también nombres de cadenas para especificar las hojas (Sheet1
,Sheet3
,["Sheet4", "Sheet5", "Sheet8"]
).header
: la fila que debe considerarse como encabezado del archivo de Excel. El valor predeterminado es0
porque la primera fila suele ser el encabezado y considera la indexación basada en cero. Si no hay encabezado, configúrelo enNone
.names
: Podemos especificar qué columnas deseamos leer del archivo de Excel. Acepta una lista de nombres de columna. El valor predeterminado esNone
. Dado que los nombres de las columnas se encuentran dentro del encabezado, el archivo debe tener uno. De lo contrario, simplemente establezcaheader = None
.
Ahora veamos cómo podemos usar esta función para leer un archivo .xlxs
. Consulte el siguiente código.
file_name = "my_file.xlsx" # File name
sheet_name = 3 # 4th sheet
header = 1 # The header is the 2nd row
df = pd.read_excel(file_name=file_name, sheet_name=sheet_name, header=header)
print(df.head()) # Prints first 5 rows from the top along with the header
print(df.tail()) # Prints first 5 rows from the bottom along with the header