Python学习笔记:natsort实现自然排序
2022/4/24 1:12:49
本文主要是介绍Python学习笔记:natsort实现自然排序,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、介绍
自然排序顺序(Natural sort order
)不同于默认排序,针对字符串逐个比较对应位置字符的 ASCII
码方式,更关注字符串实际相对大小意义的排序。
例如:需要根据年增长率(50%)对数据列进行排序,此时无法直接排序。
可以借助第三方库(natsort
)进行排序。
二、natsort库
1.安装
pip install natsort ''' Collecting natsort Downloading natsort-8.1.0-py3-none- Installing collected packages: natsor Successfully installed natsort-8.1.0 '''
2.排序
import pandas as pd import numpy as np import natsort # 构建测试集 df = pd.DataFrame({ "Name": ['A', 'B', 'C'], "Rate": ['5%', '15%', '10%'] }) # 默认排序 df.sort_values(by='Rate') ''' Name Rate 2 C 10% 1 B 15% 0 A 5% ''' # 并非我们所要~ # 自然排序 natsort.index_natsorted(df['Rate']) # 自然顺序排序 np.argsort(natsort.index_natsorted(df['Rate'])) # 最终结果 df.sort_values('Rate', key=lambda x: np.argsort(natsort.index_natsorted(x))) ''' Name Rate 0 A 5% 2 C 10% 1 B 15% '''
参考链接:pandas中鲜为人知的隐藏排序技巧
参考链接:natsort
这篇关于Python学习笔记:natsort实现自然排序的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-24Python编程基础详解
- 2024-11-21Python编程基础教程
- 2024-11-20Python编程基础与实践
- 2024-11-20Python编程基础与高级应用
- 2024-11-19Python 基础编程教程
- 2024-11-19Python基础入门教程
- 2024-11-17在FastAPI项目中添加一个生产级别的数据库——本地环境搭建指南
- 2024-11-16`PyMuPDF4LLM`:提取PDF数据的神器
- 2024-11-16四种数据科学Web界面框架快速对比:Rio、Reflex、Streamlit和Plotly Dash
- 2024-11-14获取参数学习:Python编程入门教程