Siéntete libre de compartir nuestra web y códigos en tus redes, apóyanos para hacer crecer nuestra comunidad.
Solución:
Elaborando el comentario de @FLab, use algo en ese sentido:
Editar:
Se actualizó la respuesta para que corresponda a la pregunta actualizada que pregunta cómo leer algunas hojas a la vez. Así que al proporcionar sheet_name=None
a read_excel()
puedes leer todas las hojas a la vez y los pandas devuelven un dict
de DataFrames, donde el keys son los nombres de las hojas de Excel.
import pandas as pd
In [10]:
df = pd.read_excel('Book1.xlsx', sheetname=None, header=None)
df
Out[11]:
u'Sheet1': 0
0 1
1 1, u'Sheet2': 0
0 1
1 2
2 10
In [13]:
data = df["Sheet1"]
secondary_data = df["Sheet2"]
secondary_data.loc[2,0]
Out[13]:
10
Alternativamente, como se indica en esta publicación, si su archivo de Excel tiene varias hojas, puede pasar sheetname
una lista de cadenas, nombres de hojas para analizar, por ejemplo.
df = pd.read_excel('Book1.xlsx', sheetname=["Sheet1", "Sheet2"], header=None)
Créditos al usuario 6241235 por encontrar la última alternativa
Puede usar pandas read_excel que tiene el argumento skip_footer. Esto debería funcionar, donde skipendrows es el número de filas finales que desea omitir.
data = xls.read_excel(filename, 'Sheet2', parse_cols = "A", skipsrows = 2, skip_footer=skipendrows, header =None)
La lectura de un archivo de Excel con Pandas va a ser un marco de datos predeterminado. No necesita una tabla completa, solo una celda. La forma en que lo hago es convertir esa celda en un encabezado, por ejemplo:
# Read Excel and select a single cell (and make it a header for a column)
data = pd.read_excel(filename, 'Sheet2', index_col=None, usecols = "C", header = 10, nrows=0)
Devolverá una “lista” de 1 encabezado (s) y sin datos. Luego aísle ese encabezado:
# Extract a value from a list (list of headers)
data = data.columns.values[0]
print (data)
Puedes añadir valor a nuestra información asistiendo con tu experiencia en las acotaciones.