0.5将数据保存到同一工作簿的新工作表

李光朱课程 2024-03-25 14:46:58
案例导入

如下图的Excel文件中,读取其中前6行的数据,写入到“Sheet2”中。

图1.读取前6行数据

文心一言提示词

打开百度“文心一言”,输入提示词:“你是pandas专家,文件路径为:D:/Samples/单品电商数据.xlsx。该Excel文件的第一个工作表中A-F列为给定数据。用pandas导入Excel文件的数据,导入前6行数据,引擎为"openpyxl"。用xlwings打开该Excel文件,添加一个新的工作表Sheet2,然后将导入的数据用xlwings写入到Sheet2工作表中并保存。退出xlwings。添加代码注释。”

我的电脑第一次显示的结果如下:

为了完成您所描述的任务,我们可以使用pandas和xlwings这两个Python库。下面是一段实现该任务的代码:

import pandas as pdimport xlwings as xw# 1. 导入Excel文件# 文件路径:D:/Samples/单品电商数据.xlsxfile_path = "D:/Samples/单品电商数据.xlsx"data = pd.read_excel(file_path, engine='openpyxl')# 仅导入前6行数据data = data.head(6)# 2. 打开Excel文件并添加新的工作表Sheet2wb = xw.Book(file_path) # 打开Excel文件wb.sheets.add('Sheet2') # 添加新的工作表Sheet2# 3. 将数据写入新工作表Sheet2xw_data = xw.DataFrame(data) # 将pandas DataFrame转换为xlwings DataFramexw_data.to_excel(wb, index=False, sheet_name='Sheet2') # 将数据写入Sheet2工作表# 4. 保存并关闭Excel文件wb.save() # 保存文件wb.close() # 关闭Excel文件

这段代码在Python中运行发现报错,错误信息如下:

图2.运行错误提示信息

于是,我点击下图位置,让文心一言重新生成一次。

图3.重新生成代码

重新生成的代码如下:

为了完成您所描述的任务,我们可以使用pandas和xlwings这两个Python库。下面是一段实现该任务的代码:

# 导入必要的库import pandas as pdimport xlwings as xw# 使用pandas读取Excel文件的前6行数据file_path = 'D:/Samples/单品电商数据.xlsx'df = pd.read_excel(file_path, nrows=6, engine='openpyxl')# 打开Excel文件并添加新的工作表Sheet2wb = xw.Book(file_path)sheet2 = wb.sheets.add('Sheet2')# 将数据写入新的工作表Sheet2sheet2.range('A1').value = df.to_numpy()# 保存并关闭Excel文件wb.save('D:/Samples/单品电商数据_modified.xlsx')wb.close()

这段代码首先使用pandas的read_excel函数读取Excel文件的前6行数据,然后使用xlwings打开该Excel文件,并添加一个新的工作表Sheet2。接着,我们将数据写入到新的工作表Sheet2中,最后保存并关闭Excel文件。

Python编辑器运行

经过重新生成后的代码可以正常运行,并实现预定操作。

图4.Python运行结果

图5.生成的新文件及数据

本合集使用的工具如下:

文心一言:3.5版本

Python编辑器:3.9.0

申明:以上结果皆为实际运行结果,如遇到无法运行可在评论区留言。部分数据来至网络,如有侵权请私信告知,感谢!

0 阅读:6