Microsoft Excel es un programa de hoja de cálculo muy utilizado. Su facilidad de uso y caracterÃsticas atractivas la convierten en una herramienta muy utilizada en Data Science. La biblioteca de Panadas proporciona funciones con las que podemos leer un archivo de Excel en su totalidad, asà como en partes solo para un grupo seleccionado de datos. También podemos leer un archivo de Excel con varias hojas. Usamos read_excel una función para leer datos de él.
Cree un archivo de Excel con varias hojas en Windows. Los datos de las diferentes hojas se muestran a continuación.
Puede crear este archivo usando Excel en Windows. Guarde el archivo como input.xlsx…
# Data in Sheet1 id,name,salary,start_date,dept 1,Rick,623.3,2012-01-01,IT 2,Dan,515.2,2013-09-23,Operations 3,Tusar,611,2014-11-15,IT 4,Ryan,729,2014-05-11,HR 5,Gary,843.25,2015-03-27,Finance 6,Rasmi,578,2013-05-21,IT 7,Pranab,632.8,2013-07-30,Operations 8,Guru,722.5,2014-06-17,Finance # Data in Sheet2 id name zipcode 1 Rick 301224 2 Dan 341255 3 Tusar 297704 4 Ryan 216650 5 Gary 438700 6 Rasmi 665100 7 Pranab 341211 8 Guru 347480
EN read_excel La función de la biblioteca de pandas se utiliza para leer el contenido de un archivo de Excel en el entorno de Python como un DataFrame de pandas. La función puede leer archivos del sistema operativo utilizando la ruta de archivo correcta. De forma predeterminada, la función leerá Hoja1.
import pandas as pd data = pd.read_excel('path/input.xlsx') print (data)
Cuando ejecutamos el código anterior, da el siguiente resultado. Observe cómo la función ha creado una columna de base cero adicional como Ãndice.
id name salary start_date dept 0 1 Rick 623.30 2012-01-01 IT 1 2 Dan 515.20 2013-09-23 Operations 2 3 Tusar 611.00 2014-11-15 IT 3 4 Ryan 729.00 2014-05-11 HR 4 5 Gary 843.25 2015-03-27 Finance 5 6 Rasmi 578.00 2013-05-21 IT 6 7 Pranab 632.80 2013-07-30 Operations 7 8 Guru 722.50 2014-06-17 Finance
Similar a lo que vimos en el capÃtulo anterior, para leer un archivo CSV, read_excel La función de la biblioteca de pandas también se puede utilizar para leer algunas columnas y filas especÃficas. Usamos una técnica de indexación de múltiples ejes llamada .loc () para esto. Decidimos mostrar las columnas de salario y nombre para algunas filas.
import pandas as pd data = pd.read_excel('path/input.xlsx') # Use the multi-axes indexing funtion print (data.loc[[1,3,5],['salary','name']])
Cuando ejecutamos el código anterior, da el siguiente resultado.
salary name 1 515.2 Dan 3 729.0 Ryan 5 578.0 Rasmi
También se pueden leer varias hojas con diferentes formatos de datos con la función read_excel usando una clase contenedora llamada Archivo Excel… Leerá varias hojas en la memoria solo una vez. En el siguiente ejemplo, leemos la hoja 1 y la hoja 2 en dos marcos de datos y los imprimimos por separado.
import pandas as pd with pd.ExcelFile('C:/Users/Rasmi/Documents/pydatasci/input.xlsx') as xls: df1 = pd.read_excel(xls, 'Sheet1') df2 = pd.read_excel(xls, 'Sheet2') print("****Result Sheet 1****") print (df1[0:5]['salary']) print("") print("***Result Sheet 2****") print (df2[0:5]['zipcode'])
Cuando ejecutamos el código anterior, da el siguiente resultado.
****Result Sheet 1**** 0 623.30 1 515.20 2 611.00 3 729.00 4 843.25 Name: salary, dtype: float64 ***Result Sheet 2**** 0 301224 1 341255 2 297704 3 216650 4 438700 Name: zipcode, dtype: int64
🚫