Vývojáři často potřebují exportovat DataFrame Pandas do Excelu. Excel je vynikající nástroj pro sdílení a přezkoumání zpráv. Python s Pandas to usnadňuje, ale použití Aspose.Cells for Python vám dává větší kontrolu. Můžete převést DataFrame přímo do Excelu, prostřednictvím CSV, pomocí JSON, nebo dokonce exportovat více DataFrames do jednoho souboru. V tomto článku se naučíte, jak převést Pandas DataFrame do Excelu čtyřmi metodami krok za krokem.
Proč používat Aspose.Cells pro Pandas do Excelu
Pandas má vestavěnou funkci toexcel(). Funguje pro základní exporty, ale je omezená ve funkcích. Aspose.Cells for Python je jednou z nejlepších Python Excel knihoven pro vývojáře, která poskytuje kompletní Excel engine. Umožňuje vám ukládat DataFrames do Excelu s vysokou spolehlivostí. Můžete také pracovat s grafy, vzorci, formátováním a velkými soubory.
Tento článek vám ukáže, jak exportovat Pandas DataFrame do formátu Excel pomocí Aspose.Cells různými způsoby.
Před tím, než začnete, ujistěte se, že máte nainstalováno následující:
- Stáhnout Aspose.Cells for Python z vydání nebo nainstalovat pomocí pip:
pip install aspose-cells-python
- Pandas – nainstalujte pomocí pip:
pip install pandas
Tyto dvě knihovny vám umožní převést DataFrames Pandas na soubory Excel.
Metoda 1: Přímo převést DataFrame na Excel s Aspose.Cells
Nejčastější úkol je exportovat Pandas DataFrame přímo do Excelu. S Aspose.Cells můžete vytvořit pracovní knihu, importovat hodnoty DataFrame a uložit ji jako soubor Excel.
Postupujte podle níže uvedených kroků pro převod DataFrame do Excelu:
- Build a sample dataset.
- Inicializujte prázdný Excel sešit.
- Získejte první list v sešitu.
- Vložte názvy sloupců DataFrame do buněk Excelu.
- Procházejte každým řádkem v DataFrame a vkládejte hodnoty do buněk.
- Exportujte konečný pracovní sešit do souboru Excel.
Následující příklad kódu ukazuje, jak převést Pandas na Excel přímo:
import aspose.cells as ac
import pandas as pd
# Krok 1: Vytvořte ukázkový DataFrame
data = {
'name': ['Alice', 'Bob', 'Charlie', 'David'],
'age': [25, 32, 18, 47],
'city': ['New York', 'Paris', 'London', 'Berlin']
}
df = pd.DataFrame(data)
# Krok 2: Vytvořte nový sešit
wb = ac.Workbook()
# Krok 3: Získejte první pracovní list
worksheet = wb.worksheets[0]
# Krok 4: Získejte kolekci buněk
cells = worksheet.cells
# Krok 5: Zapište názvy sloupců DataFrame do Excelu
rowindex = 0
colindex = 0
for column in df:
cell = cells.get(rowindex, colindex)
cell.put_value(df[column].name)
colindex += 1
# Krok 6: Zapište řádky DataFrame do Excelu
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
# Krok 7: Uložte DataFrame jako Excel
wb.save("direct_df_to_excel.xlsx")

Převod DataFrame do Excelu přímo s Aspose.Cells.
Tento kód uloží Pandas DataFrame do Excelu na daném místě. Můžete změnit cestu, aby odpovídala vašemu systému.
Tato metoda vám poskytuje plnou kontrolu nad tím, jak jsou data DataFrame Pandas zapisována do Excelu. Je to nejpřímější způsob, jak převést DF na Excel pomocí Aspose.Cells.
Metoda 2: Převod DataFrame do Excelu pomocí CSV
Dalším jednoduchým způsobem je nejprve uložit váš Pandas DataFrame jako CSV, a poté převést tento CSV soubor do Excelu pomocí Aspose.Cells. To je užitečné, když váš proces již generuje výstup ve formátu CSV a vy stále potřebujete čistý Excel soubor.
Prosím, postupujte podle těchto kroků k převodu DataFrame na Excel přes CSV:
- Build sample data.
- Uložte DataFrame jako CSV pomocí metody
tocsv()z Pandas. - Otevřete CSV jako sešit.
- Exportujte pracovní sešit do formátu
.xlsx.
Následující příklad kódu ukazuje, jak převést Pandas na Excel pomocí CSV:
import aspose.cells as ac
import pandas as pd
# Krok 1: Vytvořte ukázkový DataFrame
data = {
'name': ['Alice', 'Bob', 'Charlie', 'David'],
'age': [25, 32, 18, 47],
'city': ['New York', 'Paris', 'London', 'Berlin']
}
df = pd.DataFrame(data)
# Krok 2: Uložit DataFrame jako CSV
df.to_csv("temp.csv", index=False)
# Krok 3: Načíst soubor CSV pomocí Aspose.Cells
wb = ac.Workbook("temp.csv")
# Krok 4: Uložit jako soubor Excel
wb.save("df_via_csv.xlsx")
Tento přístup nejprve vytvoří CSV soubor, poté ho převádí na Excel. Zajišťuje, že vaše konverze Pandas na Excel funguje i tehdy, když váš pracovní postup již závisí na CSV souborech.
Použijte tuto metodu, když chcete rychle přejít z CSV do Excelu a zároveň zachovat flexibilitu Pandas a Aspose.Cells.
Metoda 3: Převod DataFrame na Excel pomocí JSON
Mnoho API používá JSON. Můžete také předat JSON do Aspose.Cells pro vytvoření Excelové tabulky. Tato metoda nejprve převede Pandas DataFrame na JSON, a poté načte tento JSON do Excelu jako tabulku. Udržuje váš export pandas do Excelu čistý a spolehlivý. Také to pomáhá, když chcete striktně řídit hlavičky a datové typy.
Prosím, následujte níže uvedené kroky:
- Vytvořte vzorová data pro demo.
- Zavolejte
df.tojson(orient='records'), abyste provedli konverzi. - Inicializujte objekt třídy
Workbook()a získejte první pracovní list. - Povolit
arrayastablepro správný import tabulek. - Zavolejte metodu
JsonUtility.importdata(), abyste importovali JSON do buněk pracovního listu. - Napište konečný soubor do
.xlsx.
Následující příklad kódu ukazuje, jak převést Pandas DF na Excel pomocí JSON:
import pandas as pd
from aspose.cells.utility import JsonUtility, JsonLayoutOptions
from aspose.cells import Workbook, Worksheet, Cells
# Vytvořte ukázkový pandas DataFrame
data = {'Name': ['Alice', 'Bob', 'Charlie'],
'Age': [25, 30, 35],
'City': ['New York', 'San Francisco', 'Los Angeles']}
df = pd.DataFrame(data)
# Převod pandas DataFrame na JSON
json_string = df.to_json(orient='records')
workbook = Workbook()
# Získejte první pracovní list
worksheet = workbook.worksheets[0]
# Získejte buňky
cells = worksheet.cells
options = JsonLayoutOptions()
unit = JsonUtility()
# Procesy jako tabulka
options.array_as_table = True
# Importujte JSON data do pracovního listu, začínající na řádku 0, sloupci 0
unit.import_data(json_string, cells, 0, 0, options)
# Uložit jako soubor Excel
workbook.save("df_via_json.xlsx")
orient='records' vytváří seznam objektů. Každý objekt mapuje klíče na názvy sloupců. arrayastable=True říká Aspose.Cells, aby zacházelo s polem jako s řádnou tabulkou s hlavičkami. Importér zapisuje hodnoty do buněk počínaje A1. To vám dává předvídatelnou strukturu v Excelu.
Metoda 4: Exportovat více DataFrames do Excelových listů
Můžete zapisovat více než jeden Pandas DataFrame do jednoho souboru Excel. Každý DataFrame jde na svůj vlastní list. Tato metoda vám poskytuje čistý export pandas do Excel pro zprávy a seskupené tabulky.
Prosím, následujte níže uvedený krok:
- Vytvořte funkci, která zapisuje mnoho DataFrame do mnoha listů.
- Inicializujte nový pracovní sešit.
- Přidejte list pro každý DataFrame a pojmenujte jej podle
sheetnames. - Vložte názvy sloupců do prvního řádku.
- Procházejte dvojice DataFrame a zapisujte hodnoty buněk.
- Exportovat jako XLSX pomocí metody
workbook.save().
Následující příklad kódu ukazuje, jak exportovat více DataFrame v Pythonu Pandas do excelových listů:
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
"""
# Vytvořte prázdný sešit
workbook = Workbook()
# Volitelné: odstraňte výchozí prázdný list, pokud jej nepotřebujete
# workbook.worksheets.removeat(0)
for df, name in zip(dataframes, sheet_names):
# Přidat nový list
worksheet = workbook.worksheets.add(name)
cells = worksheet.cells
# Napište záhlaví sloupců
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)
# Uložit jako Excel soubor
workbook.save(output_path, SaveFormat.XLSX)
# Vytvořte dvě DataFrames
df1 = pd.DataFrame({
"Name": ["Alice", "Bob"],
"Age": [25, 30]
})
df2 = pd.DataFrame({
"Product": ["Book", "Pen"],
"Price": [10.5, 1.99]
})
# Napište do Excelu
write_multiple_dataframes_to_excel(
dataframes=[df1, df2],
sheet_names=["People", "Products"],
output_path="MultiDataFrame.xlsx"
)

Export Multiple Pandas DataFrames to Excel Sheets with Aspose.Cells.
Funkce páruje každý DataFrame s názvem listu. Zapisuje záhlaví do řádku 0 a data od řádku 1. Aspose.Cells zapisuje hodnoty do buněk s pevnou typizací. Finální soubor XLSX udržuje vaše tabulky jasné a připravené k sdílení.
Získejte zdarma licenci
Vyzkoušejte Aspose.Cells for Python prostřednictvím .NET bez omezení. Požádejte o dočasnou bezplatnou licenci na license page.Použijte ji ve svém kódu, abyste odstranili omezení hodnocení. Otestujte všechny funkce, včetně DF do Excelu, grafů, vzorců a velkých souborů.
PD do Excel: Bezplatné zdroje
Prosím, využijte tyto zdroje k prohloubení svých znalostí a zlepšení vaší chápání.
- Aspose.Cells Oficiální dokumentace
- API Reference
- Bezplatné online nástroje pro Excel
- Tutorialy a příručky pro vývojáře
Závěr
Naučili jste se různé způsoby, jak exportovat DataFrame Pandas do Excelu pomocí Aspose.Cells for Python. Můžete uložit DataFrame přímo, použít CSV, použít JSON nebo zapsat více DataFrame do jednoho souboru. Každá metoda je jednoduchá, rychlá a spolehlivá. Pokud hledáte pokročilé funkce Excelu nad rámec Pandas, Aspose.Cells je správná volba. Vyzkoušejte to ve svém dalším projektu a přejděte z Pandas na Excel s plnou kontrolou.
Pokud máte nějaké otázky, navštivte naše free support forum.Rádi vám pomůžeme.
