翻译|行业资讯|编辑:吉炜炜|2025-09-08 10:26:46.030|阅读 15 次
概述:本文将向您展示如何使用 Aspose.Cells 以不同方式将 Pandas DataFrame 导出到 Excel。
# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>
相关链接:
开发人员经常需要将 Pandas DataFrame 导出到 Excel。Excel 是共享和查看报告的绝佳工具。使用 Python 和 Pandas 可以轻松实现这一点,但使用 Aspose.Cells for Python 可以为您提供更多控制权。您可以直接将 DataFrame 转换为 Excel,也可以通过 CSV、JSON 等方式,甚至可以将多个 DataFrame 导出到一个文件中。在本文中,您将逐步学习如何借助Aspose.Cells for Python ,使用四种方法将 Pandas DataFrame 转换为 Excel。
加入Aspose技术交流QQ群(1041253375),与更多小伙伴一起探讨提升开发技能。
Pandas 有一个内置to_excel()函数。它适用于基本导出,但功能有限。Aspose.Cells for Python是面向开发人员的最佳 Python Excel 库之一,它提供了完整的 Excel 引擎。它允许您以高可靠性将 DataFrames 保存到 Excel。您还可以处理图表、公式、格式和大文件。
本文将向您展示如何使用 Aspose.Cells 以不同方式将 Pandas DataFrame 导出到 Excel。
在开始之前,请确保已安装以下软件:
pip install aspose-cells-python
pip install pandas
这两个库将允许您将 Pandas DataFrames 转换为 Excel 文件。
最常见的任务是将 Pandas DataFrame 直接导出到 Excel。使用 Aspose.Cells,您可以创建工作簿,导入 DataFrame 值,并将其保存为 Excel 文件。
按照以下步骤将 DataFrame 转换为 Excel:
以下代码示例显示如何将 Pandas 直接转换为 Excel:
import aspose.cells as ac import pandas as pd # Step 1: Create a sample DataFrame data = { 'name': ['Alice', 'Bob', 'Charlie', 'David'], 'age': [25, 32, 18, 47], 'city': ['New York', 'Paris', 'London', 'Berlin'] } df = pd.DataFrame(data) # Step 2: Create a new workbook wb = ac.Workbook() # Step 3: Get the first worksheet worksheet = wb.worksheets[0] # Step 4: Get the cells collection cells = worksheet.cells # Step 5: Write DataFrame column names to Excel rowindex = 0 colindex = 0 for column in df: cell = cells.get(rowindex, colindex) cell.put_value(df[column].name) colindex += 1 # Step 6: Write DataFrame rows to 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 # Step 7: Save the DataFrame as Excel wb.save("direct_df_to_excel.xlsx")
使用 Aspose.Cells 直接将 DataFrame 转换为 Excel。
此代码将 Pandas DataFrame 保存到 Excel 的指定位置。您可以更改路径以匹配您的系统。
此方法可让您完全控制如何将 Pandas DataFrame 数据写入 Excel。这是使用 Aspose.Cells 将 DF 转换为 Excel 的最直接方法。
另一个简单的方法是先将 Pandas DataFrame 保存为 CSV 文件,然后使用 Aspose.Cells 将该 CSV 文件转换为 Excel 文件。当您的流程已经生成 CSV 输出,但仍需要一个干净的 Excel 文件时,这种方法非常有用。
请按照以下步骤通过 CSV 将 DataFrame 转换为 Excel:
以下代码示例显示如何通过 CSV 将 Pandas 转换为 Excel:
import aspose.cells as ac import pandas as pd # Step 1: Create a sample DataFrame data = { 'name': ['Alice', 'Bob', 'Charlie', 'David'], 'age': [25, 32, 18, 47], 'city': ['New York', 'Paris', 'London', 'Berlin'] } df = pd.DataFrame(data) # Step 2: Save DataFrame as CSV df.to_csv("temp.csv", index=False) # Step 3: Load CSV file with Aspose.Cells wb = ac.Workbook("temp.csv") # Step 4: Save as Excel file wb.save("df_via_csv.xlsx")
此方法首先创建一个 CSV 文件,然后将其转换为 Excel。即使您的流程已经依赖于 CSV 文件,它也能确保您的 Pandas 到 Excel 的转换能够正常进行。
当您想要快速从 CSV 转换为 Excel 同时保持 Pandas 和 Aspose.Cells 的灵活性时,请使用此方法。
许多 API 都使用 JSON。您也可以将 JSON 传递给 Aspose.Cells 来构建 Excel 工作表。此方法首先将 Pandas DataFrame 转换为 JSON,然后将该 JSON 作为表格加载到 Excel 中。它能让您的 Pandas 到 Excel 导出数据干净可靠。当您需要严格控制标题和数据类型时,它也非常有用。
请按照以下步骤操作:
以下代码示例显示如何通过 JSON 将 Pandas DF 转换为 Excel:
import pandas as pd from aspose.cells.utility import JsonUtility, JsonLayoutOptions from aspose.cells import Workbook, Worksheet, Cells # Create a sample pandas DataFrame data = {'Name': ['Alice', 'Bob', 'Charlie'], 'Age': [25, 30, 35], 'City': ['New York', 'San Francisco', 'Los Angeles']} df = pd.DataFrame(data) # Convert pandas DataFrame to JSON json_string = df.to_json(orient='records') workbook = Workbook() # Get the first worksheet worksheet = workbook.worksheets[0] # Get the cells cells = worksheet.cells options = JsonLayoutOptions() unit = JsonUtility() # Processes as table options.array_as_table = True # Import JSON data into the worksheet starting at row 0, column 0 unit.import_data(json_string, cells, 0, 0, options) # Save as Excel file workbook.save("df_via_json.xlsx")
这orient='records'会生成一个对象列表。每个对象都会将键映射到列名。array_as_table=True它会指示 Aspose.Cells 将数组视为带有标题的正确表格。导入器会将值写入从 A1 开始的单元格。这会在 Excel 中为您提供可预测的布局。
您可以将多个 Pandas DataFrame 写入单个 Excel 文件。每个 DataFrame 都会保存到其自己的工作表 (sheet)。此方法可让您将 Pandas 数据导出到 Excel,方便生成报告和分组表。
请按照以下步骤操作:
以下代码示例显示如何将多个 Pandas DataFrame 导出到 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 """ # Create a blank workbook workbook = Workbook() # Optional: remove the default blank sheet if you do not need it # workbook.worksheets.remove_at(0) for df, name in zip(dataframes, sheet_names): # Add a new worksheet worksheet = workbook.worksheets.add(name) cells = worksheet.cells # Write column headers 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) # Save as Excel file workbook.save(output_path, SaveFormat.XLSX) # Create two 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" )
使用 Aspose.Cells 将多个 Pandas DataFrames 导出到 Excel 表。
该函数将每个 DataFrame 与工作表名称配对。它会在第 0 行写入标题,并从第 1 行写入数据。Aspose.Cells 会将值写入具有强类型属性的单元格。最终生成的 XLSX 文件将保持表格清晰,方便共享。
您已经学习了使用 Aspose.Cells for Python 将 Pandas DataFrame 导出到 Excel 的多种方法。您可以直接保存 DataFrame,使用 CSV 格式,使用 JSON 格式,或者将多个 DataFrame 写入一个文件。每种方法都简单、快速且可靠。如果您正在寻找超越 Pandas 的高级 Excel 功能,Aspose.Cells 是您的理想之选。不妨在您的下一个项目中尝试一下,从 Pandas 完全控制迁移到 Excel。
————————————————————————————————————————
关于慧都科技:
慧都科技是专注软件工程、智能制造、石油工程三大行业的数字化解决方案服务商。在软件工程领域,我们提供开发控件、研发管理、代码开发、部署运维等软件开发全链路所需的产品,提供正版授权采购、技术选型、个性化维保等服务,帮助客户实现技术合规、降本增效与风险可控。慧都科技Aspose在中国的官方授权代理商,提供Aspose系列产品免费试用,咨询,正版销售等于一体的专业化服务。Aspose是文档处理领域的优秀产品,帮助企业高效构建文档处理的应用程序。
下载|体验更多Aspose产品,请咨询,或拨打产品热线:023-68661681
加入Aspose技术交流QQ群(1041253375),与更多小伙伴一起探讨提升开发技能。
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@fc6vip.cn
文章转载自:慧都网