34.多条件排序

李光朱课程2024-04-01 08:20:53  132

案例导入

如下图,请首先根据性别进行升序排序,然后对于相同性别用工号进行升序排列。

图1.原始数据表

文心一言提示词

打开百度“文心一言”,输入提示词:“你是pandas专家,文件路径为:D:/Samples/身份证号-排序.xlsx。该Excel文件的第一个工作表中A1:E11为给定数据,A-E列分别为“工号”、“部门”、“姓名”、”身份证号“和“性别”数据。用pandas导入Excel文件的数据,第1行为索引行,引擎为"openpyxl",请首先根据性别进行升序排序,然后对于相同性别用工号进行升序排列。”

显示结果如下:

要使用pandas导入Excel文件并根据指定的列进行排序,首先确保你已经安装了pandas和openpyxl库。如果尚未安装,可以使用pip进行安装:

pip install pandas openpyxl

然后,你可以使用以下Python代码来完成任务:

import pandas as pd# 指定文件路径file_path = 'D:/Samples/身份证号-排序.xlsx'# 使用pandas读取Excel文件,第一个工作表,指定索引行和引擎df = pd.read_excel(file_path, sheet_name=0, index_col=0, engine='openpyxl')# 根据性别进行升序排序,对于相同性别用工号进行升序排列df_sorted = df.sort_values(by=['性别', '工号'], ascending=[True, True])# 显示排序后的数据print(df_sorted)# 如果需要,可以将排序后的数据框保存到新的Excel文件中output_file_path = 'D:/Samples/身份证号-排序后.xlsx'df_sorted.to_excel(output_file_path, index=True, engine='openpyxl')

这段代码首先导入了pandas库,并指定了Excel文件的路径。然后,使用pd.read_excel函数读取Excel文件,并指定了第一个工作表、索引行和引擎。接着,使用sort_values方法根据性别和工号进行排序,并指定了升序排列(ascending=[True, True])。最后,打印出排序后的数据框,并可以选择将其保存到新的Excel文件中。

请注意,read_excel函数的sheet_name参数接受工作表的名称或索引。如果未指定,则默认为0,即读取第一个工作表。如果你的Excel文件中有多个工作表,并且你需要读取的不是第一个工作表,你需要相应地调整sheet_name的值。

Python编辑器运行

图2.Python运行结果

本合集使用的工具如下:

文心一言:3.5版本

Python编辑器:3.9.0

转载此文是出于传递更多信息目的。若来源标注错误或侵犯了您的合法权益,请与本站联系,我们将及时更正、删除、谢谢。
https://www.414w.com/read/147157.html
0
最新回复(0)