49.提取单位对应的数字

李光朱课程 2024-04-28 03:06:11
案例导入

如下图,从“出生日期”列提取月份和日期,以”m月n日“的形式添加到“生日”列。比如出生日期为1987/8/20,提取后得到"8月20日"添加到”生日“列。输出修改后的表数据。添加代码注释。

图1.原始数据表

文心一言提示词

打开百度“文心一言”,输入提示词:“你是pandas专家,文件路径为:D:/Samples/提取生日.xlsx。该Excel文件的第一个工作表中A-B列为给定数据。用pandas导入Excel文件的数据,导入前5行数据,引擎为"openpyxl"。在导入的数据中,从“出生日期”列提取月份和日期,以”m月n日“的形式添加到“生日”列。比如出生日期为1987/8/20,提取后得到"8月20日"添加到”生日“列。输出修改后的表数据。添加代码注释。”

显示结果如下:

以下是一个使用pandas库读取Excel文件、提取生日月份和日期,并添加到新列“生日”的Python代码示例:

import pandas as pd# 定义文件路径file_path = 'D:/Samples/提取生日.xlsx'# 使用pandas读取Excel文件,指定工作表为第一个(index=0),并仅读取前5行# 引擎设置为"openpyxl"df = pd.read_excel(file_path, sheet_name=0, nrows=5, engine='openpyxl')# 假设“出生日期”列的名称是'出生日期'# 从“出生日期”列提取月份和日期,并以"m月n日"的形式添加到“生日”列# 使用apply方法结合lambda表达式处理每行数据df['生日'] = df['出生日期'].apply(lambda x: "{:02d}月{:02d}日".format(x.month, x.day) if pd.notnull(x) else None)# 输出修改后的表数据print(df)

代码注释如下:

import pandas as pd# 定义文件路径,请确保路径和文件名正确无误# file_path = 'D:/Samples/提取生日.xlsx'file_path = '你的文件路径.xlsx' # 替换为你的实际文件路径# 使用pandas的read_excel函数读取Excel文件# sheet_name=0指定读取第一个工作表,nrows=5指定仅读取前5行数据# engine='openpyxl'指定使用openpyxl作为Excel文件的读取引擎# df是一个DataFrame对象,它包含了读取的Excel数据df = pd.read_excel(file_path, sheet_name=0, nrows=5, engine='openpyxl')# 假设Excel文件中的“出生日期”列的名称是'出生日期'# 使用apply方法和lambda表达式对“出生日期”列中的每个日期进行处理# lambda表达式中,x代表“出生日期”列中的单个元素(一个日期对象)# format方法将月份和日期格式化为"mm月dd日"的形式# 如果x为null(即某行没有“出生日期”数据),则结果也为Nonedf['生日'] = df['出生日期'].apply(lambda x: "{:02d}月{:02d}日".format(x.month, x.day) if pd.notnull(x) else None)# 输出修改后的DataFrame,即包含新“生日”列的表数据print(df)

请确保Excel文件路径正确,并且“出生日期”列的名称与代码中的名称匹配。如果列名不同,请相应地修改代码中的列名。此外,如果Excel文件中有缺失的出生日期数据,上述代码将在新“生日”列中为这些行填充None值。如果需要不同的处理方式,可以修改lambda表达式中的条件判断部分。

Python运行结果

图2.Python运行结果

本合集使用的工具如下:

文心一言:3.5版本

Python编辑器:3.9.0

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

0 阅读:3

李光朱课程

简介:感谢大家的关注