Os desenvolvedores frequentemente precisam exportar um DataFrame do Pandas para o Excel. O Excel é uma excelente ferramenta para compartilhar e revisar relatórios. O Python com Pandas torna isso simples, mas usar o Aspose.Cells for Python lhe dá mais controle. Você pode converter um DataFrame para Excel diretamente, através de CSV, via JSON ou até mesmo exportar múltiplos DataFrames em um único arquivo. Neste artigo, você aprenderá como converter um DataFrame do Pandas para o Excel com quatro métodos, passo a passo.
Por que usar Aspose.Cells para Pandas para Excel
O Pandas tem uma função toexcel() embutida. Ela funciona para exportações básicas, mas é limitada em recursos. Aspose.Cells for Python é uma das melhores bibliotecas Python para Excel para desenvolvedores e fornece um motor completo para Excel. Ela permite que você salve DataFrames em Excel com alta confiabilidade. Você também pode trabalhar com gráficos, fórmulas, formatação e arquivos grandes.
Este artigo mostrará como exportar um DataFrame do Pandas para Excel usando Aspose.Cells de diferentes maneiras.
Antes de começar, certifique-se de ter o seguinte instalado:
- Baixar Aspose.Cells for Python do releases ou instalar com pip:
pip install aspose-cells-python
- Pandas – instalar com pip:
pip install pandas
Essas duas bibliotecas permitirão que você converta DataFrames do Pandas em arquivos Excel.
Método 1: Converter DataFrame para Excel Diretamente com Aspose.Cells
A tarefa mais comum é exportar um DataFrame do Pandas para Excel diretamente. Com Aspose.Cells, você pode criar uma pasta de trabalho, importar os valores do DataFrame e salvá-la como um arquivo do Excel.
Siga os passos abaixo para converter DataFrame em Excel:
- Build a sample dataset.
- Inicialize uma planilha do Excel vazia.
- Acesse a primeira aba na pasta de trabalho.
- Inserir nomes de colunas do DataFrame em células do Excel.
- Percorra cada linha no DataFrame e coloque valores nas células.
- Exporte a pasta de trabalho final para um arquivo Excel.
O seguinte exemplo de código mostra como converter um Pandas para Excel diretamente:
import aspose.cells as ac
import pandas as pd
# Passo 1: Criar um DataFrame de amostra
data = {
'name': ['Alice', 'Bob', 'Charlie', 'David'],
'age': [25, 32, 18, 47],
'city': ['New York', 'Paris', 'London', 'Berlin']
}
df = pd.DataFrame(data)
# Passo 2: Crie uma nova pasta de trabalho
wb = ac.Workbook()
# Passo 3: Obtenha a primeira folha de trabalho
worksheet = wb.worksheets[0]
# Passo 4: Obtenha a coleção de células
cells = worksheet.cells
# Passo 5: Escrever nomes das colunas do DataFrame para o Excel
rowindex = 0
colindex = 0
for column in df:
cell = cells.get(rowindex, colindex)
cell.put_value(df[column].name)
colindex += 1
# Passo 6: Escrever linhas do DataFrame no Excel
for index, row in df.iterrows():
rowindex += 1
colindex = 0
cell = cells.get(rowindex, colindex)
cell.put_value(row["name"])
colindex += 1
cell = cells.get(rowindex, colindex)
cell.put_value(row["age"])
colindex += 1
cell = cells.get(rowindex, colindex)
cell.put_value(row["city"])
colindex += 1
# Passo 7: Salve o DataFrame como Excel
wb.save("direct_df_to_excel.xlsx")

Converter DataFrame para Excel Diretamente com Aspose.Cells.
Este código salva o DataFrame do Pandas no Excel na localização dada. Você pode alterar o caminho para coincidir com o seu sistema.
Este método oferece total controle sobre como os dados do DataFrame do Pandas são escritos no Excel. É a maneira mais direta de converter um DF para Excel usando Aspose.Cells.
Método 2: Converter DataFrame para Excel via CSV
Outra maneira simples é salvar seu DataFrame do Pandas como CSV primeiro, e então converter esse arquivo CSV em Excel usando Aspose.Cells. Isso é útil quando seu processo já gera saída CSV e você ainda precisa de um arquivo Excel limpo.
Por favor, siga estas etapas para converter DataFrame para Excel via CSV:
- Build sample data.
- Salve o DataFrame como CSV usando o método
tocsv()do Pandas. - Abra o CSV como uma pasta de trabalho.
- Exporte a pasta de trabalho para um arquivo
.xlsx.
O seguinte exemplo de código mostra como converter Pandas para Excel via CSV:
import aspose.cells as ac
import pandas as pd
# Passo 1: Crie um DataFrame de amostra
data = {
'name': ['Alice', 'Bob', 'Charlie', 'David'],
'age': [25, 32, 18, 47],
'city': ['New York', 'Paris', 'London', 'Berlin']
}
df = pd.DataFrame(data)
# Passo 2: Salvar DataFrame como CSV
df.to_csv("temp.csv", index=False)
# Passo 3: Carregar arquivo CSV com Aspose.Cells
wb = ac.Workbook("temp.csv")
# Etapa 4: Salvar como arquivo Excel
wb.save("df_via_csv.xlsx")
Esta abordagem primeiro cria um arquivo CSV, em seguida, o converte em Excel. Isso garante que sua conversão de Pandas para Excel funcione mesmo que seu pipeline já dependa de arquivos CSV.
Use este método quando você quiser passar de CSV para Excel rapidamente, mantendo a flexibilidade do Pandas e do Aspose.Cells.
Método 3: Converter DataFrame para Excel via JSON
Muitas APIs usam JSON. Você também pode passar JSON para Aspose.Cells para construir uma planilha do Excel. Este método converte primeiro um DataFrame do Pandas em JSON e, em seguida, carrega esse JSON no Excel como uma tabela. Ele mantém sua exportação de pandas para Excel limpa e confiável. Também ajuda quando você deseja controle rígido sobre cabeçalhos e tipos de dados.
Por favor, siga os passos abaixo:
- Construir dados de exemplo para a demonstração.
- Chame o
df.tojson(orient='records')para converter. - Inicialize o objeto da classe
Workbook()e obtenha a primeira planilha. - Habilite
arrayastablepara importação tabular adequada. - Chame o método
JsonUtility.importdata()para importar JSON nas células da planilha. - Escreva o arquivo final para o
.xlsx.
O seguinte exemplo de código mostra como converter um DF do Pandas para Excel via JSON:
import pandas as pd
from aspose.cells.utility import JsonUtility, JsonLayoutOptions
from aspose.cells import Workbook, Worksheet, Cells
# Crie um DataFrame de exemplo do pandas
data = {'Name': ['Alice', 'Bob', 'Charlie'],
'Age': [25, 30, 35],
'City': ['New York', 'San Francisco', 'Los Angeles']}
df = pd.DataFrame(data)
# Converter DataFrame do pandas para JSON
json_string = df.to_json(orient='records')
workbook = Workbook()
# Obtenha a primeira planilha
worksheet = workbook.worksheets[0]
# Get the cells
cells = worksheet.cells
options = JsonLayoutOptions()
unit = JsonUtility()
# Processos como tabela
options.array_as_table = True
# Importar dados JSON para a planilha começando na linha 0, coluna 0
unit.import_data(json_string, cells, 0, 0, options)
# Salvar como arquivo Excel
workbook.save("df_via_json.xlsx")
O orient='records' produz uma lista de objetos. Cada objeto mapeia chaves para nomes de colunas. arrayastable=True informa ao Aspose.Cells para tratar o array como uma tabela adequada com cabeçalhos. O importador escreve valores nas células começando em A1. Isso lhe dá um layout previsível no Excel.
Método 4: Exportar Múltiplos DataFrames para Planilhas do Excel
Você pode escrever mais de um DataFrame do Pandas em um único arquivo Excel. Cada DataFrame vai para sua própria aba. Este método oferece uma exportação limpa do pandas para o Excel para relatórios e tabelas agrupadas.
Por favor, siga o passo abaixo:
- Crie uma função que escreva muitos DataFrames em muitas planilhas.
- Inicie uma nova pasta de trabalho.
- Adicione uma planilha para cada DataFrame e nomeie-a a partir de
sheetnames. - Coloque os nomes das colunas na primeira linha.
- Percorra as tuplas do DataFrame e escreva os valores das células.
- Exporte como XLSX com o método
workbook.save().
O seguinte exemplo de código mostra como exportar múltiplos DataFrames do Pandas para planilhas do Excel:
import pandas as pd
from aspose.cells import Workbook, WorksheetCollection, SaveFormat
def write_multiple_dataframes_to_excel(dataframes, sheet_names, output_path):
"""
Write multiple DataFrames to multiple sheets in an Excel file
:param dataframes: List of pandas.DataFrame
:param sheet_names: List of sheet names (same length as dataframes)
:param output_path: Output Excel file path
"""
# Crie uma nova pasta de trabalho.
workbook = Workbook()
# Opcional: remova a folha em branco padrão se você não precisar dela
# workbook.worksheets.removeat(0)
for df, name in zip(dataframes, sheet_names):
# Adicionar uma nova planilha
worksheet = workbook.worksheets.add(name)
cells = worksheet.cells
# Escreva os cabeçalhos da coluna
for col_idx, col_name in enumerate(df.columns):
cells.get(0, col_idx).put_value(str(col_name))
# Write row data
for row_idx, row in enumerate(df.itertuples(index=False), start=1):
for col_idx, value in enumerate(row):
cells.get(row_idx, col_idx).put_value(value)
# Salvar como arquivo Excel
workbook.save(output_path, SaveFormat.XLSX)
# Crie dois DataFrames
df1 = pd.DataFrame({
"Name": ["Alice", "Bob"],
"Age": [25, 30]
})
df2 = pd.DataFrame({
"Product": ["Book", "Pen"],
"Price": [10.5, 1.99]
})
# Write to Excel
write_multiple_dataframes_to_excel(
dataframes=[df1, df2],
sheet_names=["People", "Products"],
output_path="MultiDataFrame.xlsx"
)

Exportar Vários DataFrames do Pandas para Planilhas do Excel com Aspose.Cells.
A função emparelha cada DataFrame com um nome de planilha. Escreve cabeçalhos na linha 0 e dados a partir da linha 1. Aspose.Cells escreve valores em células com tipagem forte. O arquivo XLSX final mantém suas tabelas claras e prontas para compartilhar.
Obtenha uma Licença Gratuita
Avalie o Aspose.Cells for Python via .NET sem limites. Solicite uma licença temporária gratuita na license page.Aplique-a em seu código para remover as restrições de avaliação. Teste todos os recursos, incluindo DF para Excel, gráficos, fórmulas e arquivos grandes.
PD para Excel: Recursos Gratuitos
Por favor, utilize esses recursos para aprimorar seu conhecimento e melhorar sua compreensão.
- Documentação Oficial do Aspose.Cells
- Referência da API
- Ferramentas Gratuitas de Excel Online
- Tutoriais e Guias para Desenvolvedores
Conclusão
Você aprendeu várias maneiras de exportar um DataFrame do Pandas para Excel com Aspose.Cells for Python. Você pode salvar um DataFrame diretamente, usar CSV, usar JSON ou escrever múltiplos DataFrames em um arquivo. Cada método é simples, rápido e confiável. Se você está procurando por recursos avançados do Excel além do Pandas, Aspose.Cells é a escolha certa. Experimente em seu próximo projeto e mude do Pandas para o Excel com controle total.
Se você tiver alguma dúvida, visite nosso fórum de suporte gratuito.Ficaremos felizes em ajudá-lo.