21.列的字符串数据改为数字

李光朱课程 2024-04-03 10:09:30
案例导入

如下图所示,将“大小”列中的字符串数据按照下面的规则修改为数字:"S"改为1,"M"改为2,"L"改为3,"XL"改为4,"XXL"改为5。输出修改后的表数据,并在同目录下另存为“修改后的男裤库存”。添加代码注释。

图1.原始数据表

文心一言提示词

打开百度“文心一言”,输入提示词:“D:/Samples/男裤库存.xlsx。该Excel文件的第一个工作表中A-D列为给定数据。用pandas导入Excel文件的数据,引擎为"openpyxl"。在导入的数据中,将“大小”列中的字符串数据按照下面的规则修改为数字:"S"改为1,"M"改为2,"L"改为3,"XL"改为4,"XXL"改为5。输出修改后的表数据,并在同目录下另存为“修改后的男裤库存”。添加代码注释。”

显示结果如下:

为了完成这个任务,我们需要使用Python的pandas库来读取和处理Excel文件。同时,由于要使用openpyxl作为引擎,我们还需要确保已经安装了openpyxl库。

下面是一个包含注释的Python脚本,该脚本将按照您的要求读取Excel文件,修改“大小”列的数据,然后保存修改后的数据到新的Excel文件。

import pandas as pd# 设置Excel文件的路径file_path = 'D:/Samples/男裤库存.xlsx'# 使用pandas读取Excel文件,指定引擎为'openpyxl'# 假设第一个工作表的名称是'Sheet1',如果不是,请替换为实际的工作表名称df = pd.read_excel(file_path, sheet_name='Sheet1', engine='openpyxl')# 定义一个字典,用于将'大小'列中的字符串映射为数字size_mapping = {'S': 1, 'M': 2, 'L': 3, 'XL': 4, 'XXL': 5}# 使用map函数将'大小'列中的字符串替换为相应的数字df['大小'] = df['大小'].map(size_mapping)# 输出修改后的数据表print(df)# 设置保存修改后数据的Excel文件路径output_file_path = 'D:/Samples/修改后的男裤库存.xlsx'# 将修改后的数据表保存到新的Excel文件中df.to_excel(output_file_path, index=False, engine='openpyxl')

确保在运行这段代码之前,已经安装了pandas和openpyxl库。如果尚未安装,可以通过pip安装它们:

pip install pandas openpyxl

请注意,上面的代码中假设Excel文件的第一个工作表名称是'Sheet1'。如果工作表的实际名称不同,请确保将sheet_name='Sheet1'中的'Sheet1'替换为实际的工作表名称。

此外,如果'大小'列中有不在size_mapping字典中的值,这些值在映射过程中将被转换为NaN(不是数字)。如果需要处理这种情况,可以在映射之前先检查并处理这些值。

最后,to_excel方法中的index=False参数用于避免在输出的Excel文件中包含索引列。如果希望包含索引列,可以删除或改为index=True。

Python编辑器运行

图2.Python运行结果

图3.生成的新的文件数据表

本合集使用的工具如下:

文心一言:3.5版本

Python编辑器:3.9.0

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

0 阅读:0

李光朱课程

简介:感谢大家的关注