当前位置: 首页 > news >正文

Pandas 7-进行排序、多重排序

1. 单列排序

1.1 按单列升序排序

可以使用sort_values方法按单列进行升序排序。

import pandas as pd  # 创建一个DataFrame  
data = {  'Name': ['Alice', 'Bob', 'Charlie', 'David'],    'Age': [24, 27, 22, 32],    'City': ['New York', 'Los Angeles', 'Chicago', 'Houston'],    'Score': [85, 92, 78, 88]}  df = pd.DataFrame(data)  
print(df)  # 按Age列升序排序  
df_sorted = df.sort_values(by='Age')  
print(df_sorted)  

输出:

      Name  Age         City  Score0    Alice   24     New York     85  
2  Charlie   22      Chicago     78  
1      Bob   27  Los Angeles     92  
3    David   32      Houston     88  
1.2 按单列降序排序

可以通过设置ascending=False参数按单列进行降序排序。

# 按Age列降序排序  
df_sorted_desc = df.sort_values(by='Age', ascending=False)  
print(df_sorted_desc)  

输出:

      Name  Age         City  Score3    David   32      Houston     88  
1      Bob   27  Los Angeles     92  
0    Alice   24     New York     85  
2  Charlie   22      Chicago     78  

2. 多重排序

多重排序是指按多个列进行排序。可以通过传递一个列名列表给by参数来实现多重排序。

2.1 按多列升序排序
# 按Age和Score列升序排序  
df_sorted_multi = df.sort_values(by=['Age', 'Score'])  
print(df_sorted_multi)  

输出:

      Name  Age         City  Score2  Charlie   22      Chicago     78  
0    Alice   24     New York     85  
1      Bob   27  Los Angeles     92  
3    David   32      Houston     88  
2.2 按多列降序排序

可以通过传递一个布尔值列表给ascending参数来实现按不同列的升序和降序排序。

# 按Age列升序排序,按Score列降序排序  
df_sorted_multi_desc = df.sort_values(by=['Age', 'Score'], ascending=[True, False])  
print(df_sorted_multi_desc)  

输出:

      Name  Age         City  Score2  Charlie   22      Chicago     78  
0    Alice   24     New York     85  
1      Bob   27  Los Angeles     92  
3    David   32      Houston     88  

3. 按索引排序

除了按列排序,还可以按索引进行排序。

3.1 按索引升序排序
# 按索引升序排序  
df_sorted_index = df.sort_index()  
print(df_sorted_index)  

输出:

      Name  Age         City  Score0    Alice   24     New York     85  
1      Bob   27  Los Angeles     92  
2  Charlie   22      Chicago     78  
3    David   32      Houston     88  
3.2 按索引降序排序
# 按索引降序排序  
df_sorted_index_desc = df.sort_index(ascending=False)  
print(df_sorted_index_desc)  

输出:

      Name  Age         City  Score3    David   32      Houston     88  
2  Charlie   22      Chicago     78  
1      Bob   27  Los Angeles     92  
0    Alice   24     New York     85  

http://www.mrgr.cn/news/17191.html

相关文章:

  • 【网络安全】CSRF漏洞—CSRF基础漏洞防御
  • 耶鲁大学《博弈论》公开课笔记
  • 莫比乌斯反演总结
  • 【JUC】08-中断机制之中断协商机制
  • UE5学习笔记19-服务器的更新频率,根骨骼旋转节点
  • 详解L5流程活动中的业务项(BI,Business Item)附埃森哲流程优化方法论PPT下载
  • 孩子自闭症的主要表现:探寻理解之门
  • 【安全科普】学完网络安全出去能做什么工作?
  • 【网络安全】ASP.NET网站中的文件上传RCE
  • Rust 中 `madvise` 和 `posix_fadvise`的区别
  • 一键解决LBP2900通信错误的问题(同样支持Win 11系统)
  • 编译可执行命令的FFmpeg
  • 黑马JavaWeb开发笔记12——IDEA集成Maven:配置Maven环境、Maven项目创建导入、依赖配置和管理、Maven生命周期
  • NeRF: Representing Scenes asNeural Radiance Fields for View Synthesis 论文解读
  • 【电子通识】失效分析中的电测试技术——电阻测试方法及注意事项
  • C# 反射和特性练习代码
  • JVM内存模型简述
  • 【C++篇】~类和对象(上)
  • 浅谈C# 抽象类和抽象方法
  • 捷达千里江山首发亮相,捷达品牌2024成都车展继续宠粉不停