Función Pandas DataFrame DataFrame.to_excel()
-
Sintaxis de
pandas.DataFrame.to_excel()
-
Códigos de ejemplo: Pandas
DataFrame.to_excel()
-
Códigos de ejemplo: Pandas
DataFrame.to_excel()
ConExcelWriter
-
Códigos de ejemplo: Pandas
DataFrame.to_excel
para añadir a un archivo de Excel existente -
Códigos de ejemplo: Pandas
DataFrame.to_excel
para escribir múltiples hojas -
Códigos de ejemplo: Pandas
DataFrame.to_excel
con el parámetroheader
-
Códigos de ejemplo: Pandas
DataFrame.to_excel
conindex = False
-
Códigos de ejemplo: Pandas
DataFrame.to_excel
Con el parámetroindex_label
-
Códigos de ejemplo: Pandas
DataFrame.to_excel
con el parámetrofloat_format
-
Códigos de ejemplo: Pandas
DataFrame.to_excel
con el parámetrofreeze_panes
La función Python Pandas DataFrame.to_excel(values)
vuelca los datos del dataframe a un archivo de Excel, en una sola hoja o en varias hojas.
Sintaxis de pandas.DataFrame.to_excel()
DataFrame.isin(
excel_writer,
sheet_name="Sheet1",
na_rep="",
float_format=None,
columns=None,
header=True,
index=True,
index_label=None,
startrow=0,
startcol=0,
engine=None,
merge_cells=True,
encoding=None,
inf_rep="inf",
verbose=True,
freeze_panes=None,
)
Parámetros
excel_writer |
La ruta del archivo de Excel o el existente pandas.ExcelWriter |
sheet_name |
Nombre de la hoja a la que el DataFrame se vuelca |
na_rep |
Representación de valores nulos. |
float_format |
Formato de los números float |
header |
Especifique el encabezado del archivo de Excel generado. |
index |
Si es True , escribe el Dataframe index en el Excel. |
index_label |
Etiqueta de la columna para la columna del índice. |
startrow |
La fila de la celda superior izquierda para escribir los datos en el Excel. Por defecto es 0 |
startcol |
La columna de la celda superior izquierda para escribir los datos en el Excel. Por defecto es 0 |
engine |
Parámetro opcional para especificar el motor a utilizar. openyxl o xlswriter |
merge_cells |
Fusionar el MultiIndex con las células fusionadas |
encoding |
Codificación del archivo de salida de Excel. Sólo es necesario si se usa el escritor xlwt , otros escritores soportan Unicode de forma nativa. |
inf_rep |
Representación del infinito. Por defecto es inf |
verbose |
Si True , los registros de errores consisten en más información |
freeze_panes |
Especifica la parte inferior y la parte derecha del panel congelado. Es de base única, pero no de base cero. |
Retorna
Nadie.
Códigos de ejemplo: Pandas DataFrame.to_excel()
import pandas as pd
dataframe= pd.DataFrame({'Attendance': [60, 100, 80, 78, 95],
'Name': ['Olivia', 'John', 'Laura', 'Ben', 'Kevin'],
'Marks': [90, 75, 82, 64, 45]})
dataframe.to_excel('test.xlsx')
La llamada DataFrame
es
Attendance Name Marks
0 60 Olivia 90
1 100 John 75
2 80 Laura 82
3 78 Ben 64
4 95 Kevin 45
Se crea test.xlsx
.
Códigos de ejemplo: Pandas DataFrame.to_excel()
Con ExcelWriter
El ejemplo anterior utiliza la ruta del archivo como el excel_writer
, y también podríamos utilizar pandas.Excelwriter
para especificar el archivo excel que el dataframe vuelca.
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": [60, 100, 80, 78, 95],
"Name": ["Olivia", "John", "Laura", "Ben", "Kevin"],
"Marks": [90, 75, 82, 64, 45],
}
)
with pd.ExcelWriter("test.xlsx") as writer:
dataframe.to_excel(writer)
Códigos de ejemplo: Pandas DataFrame.to_excel
para añadir a un archivo de Excel existente
import pandas as pd
import openpyxl
dataframe = pd.DataFrame(
{
"Attendance": [60, 100, 80, 78, 95],
"Name": ["Olivia", "John", "Laura", "Ben", "Kevin"],
"Marks": [90, 75, 82, 64, 45],
}
)
with pd.ExcelWriter("test.xlsx", mode="a", engine="openpyxl") as writer:
dataframe.to_excel(writer, sheet_name="new")
Deberíamos especificar el motor como openpyxl
pero no como xlswriter
por defecto; de lo contrario, obtendremos el error de que xlswriter
no soporta el modo append
.
ValueError: Append mode is not supported with xlsxwriter!
openpyxl
debe ser instalado e importado porque no es parte de pandas
.
pip install openpyxl
Códigos de ejemplo: Pandas DataFrame.to_excel
para escribir múltiples hojas
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": [60, 100, 80, 78, 95],
"Name": ["Olivia", "John", "Laura", "Ben", "Kevin"],
"Marks": [90, 75, 82, 64, 45],
}
)
with pd.ExcelWriter("test.xlsx") as writer:
dataframe.to_excel(writer, sheet_name="Sheet1")
dataframe.to_excel(writer, sheet_name="Sheet2")
Vuelca el objeto del DataFrame tanto a la Sheet1
como a la Sheet2
.
También puede escribir diferentes datos en múltiples hojas si especifica el parámetro columns
.
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": [60, 100, 80, 78, 95],
"Name": ["Olivia", "John", "Laura", "Ben", "Kevin"],
"Marks": [90, 75, 82, 64, 45],
}
)
with pd.ExcelWriter("test.xlsx") as writer:
dataframe.to_excel(writer, columns=["Name", "Attendance"], sheet_name="Sheet1")
dataframe.to_excel(writer, columns=["Name", "Marks"], sheet_name="Sheet2")
Códigos de ejemplo: Pandas DataFrame.to_excel
con el parámetro header
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": [60, 100, 80, 78, 95],
"Name": ["Olivia", "John", "Laura", "Ben", "Kevin"],
"Marks": [90, 75, 82, 64, 45],
}
)
with pd.ExcelWriter("test.xlsx") as writer:
dataframe.to_excel(writer, header=["Student", "First Name", "Score"])
El encabezado predeterminado en el archivo de Excel creado es el mismo que el de los nombres de las columnas de los cuadros de datos. El parámetro header
especifica el nuevo encabezado para reemplazar el predeterminado.
Códigos de ejemplo: Pandas DataFrame.to_excel
con index = False
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": [60, 100, 80, 78, 95],
"Name": ["Olivia", "John", "Laura", "Ben", "Kevin"],
"Marks": [90, 75, 82, 64, 45],
}
)
with pd.ExcelWriter("test.xlsx") as writer:
dataframe.to_excel(writer, index=False)
index=False
especifica que DataFrame.to_excel()
genera un archivo de Excel sin fila de encabezamiento.
Códigos de ejemplo: Pandas DataFrame.to_excel
Con el parámetro index_label
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": [60, 100, 80, 78, 95],
"Name": ["Olivia", "John", "Laura", "Ben", "Kevin"],
"Marks": [90, 75, 82, 64, 45],
}
)
with pd.ExcelWriter("test.xlsx") as writer:
dataframe.to_excel(writer, index_label="id")
index_label='id'
establece que el nombre de la columna del índice es id
.
Códigos de ejemplo: Pandas DataFrame.to_excel
con el parámetro float_format
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": [60, 100, 80, 78, 95],
"Name": ["Olivia", "John", "Laura", "Ben", "Kevin"],
"Marks": [90, 75, 82, 64, 45],
}
)
with pd.ExcelWriter("test.xlsx") as writer:
dataframe.to_excel(writer, float_format="%.1f")
float_format="%.1f"
especifica que el número flotante tiene dos dígitos float.
Códigos de ejemplo: Pandas DataFrame.to_excel
con el parámetro freeze_panes
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": [60, 100, 80, 78, 95],
"Name": ["Olivia", "John", "Laura", "Ben", "Kevin"],
"Marks": [90, 75, 82, 64, 45],
}
)
with pd.ExcelWriter("test.xlsx") as writer:
dataframe.to_excel(writer, freeze_panes=(1, 1))
freeze_panes=(1,1)
especifica que el archivo de Excel tiene la fila superior congelada y la primera columna congelada.
Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.
LinkedIn Facebook