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

对csv文件进行分组和排序详解(使用面部表情数据集fer2013)

文章目录

    • 读取csv文件
    • 获取指定列并计算它出现的次数
    • 对指定列统计出现次数
    • 按多列进行分组排序
    • 按多列进行分组排序并转换常规索引
    • 对统计的次数进行从小到大的顺序进行排序
    • 对统计的次数进行从大到小的顺序进行排序
    • 按多个列进行排序
    • 第一列从小到大,第二列从大到小排序

使用的是面部表情fer2013数据集:

Kaggle链接:链接

百度云链接:https://pan.baidu.com/s/1P_RAqH_SWD9xLqYOA3aElw ,提取码:8m8p

读取csv文件

# 使用 pandas 读取csv文件
import pandas as pd

# 读取fer2013数据集,人脸表情数据集
fer2013 = pd.read_csv("data/fer2013/fer2013.csv")

在这里插入图片描述

获取指定列并计算它出现的次数

使用groupby()获取emotion列并计算它出现的次数

# 使用groupby()获取emotion列并计算它出现的次数
fer2013.groupby('emotion').emotion.count()

在这里插入图片描述

对指定列统计出现次数

groupby()方法是agg() ,它允许在 DataFrame 上运行一堆不同的函数。
例如,我们可以生成数据集的简单统计摘要,如下所示:

# groupby()方法是agg() ,它允许在 DataFrame 上运行一堆不同的函数。
# 例如,我们可以生成数据集的简单统计摘要,如下所示:
fer2013.groupby('emotion').emotion.agg([len, min, max])

在这里插入图片描述

按多列进行分组排序

按多列进行分组,emotion和Usage中获取训练集、测试集的数据量,多索引

# 按多列进行分组,emotion和Usage中获取训练集、测试集的数据量,多索引
fer2013.groupby(['emotion', 'Usage']).Usage.agg([len])

在这里插入图片描述

按多列进行分组排序并转换常规索引

多索引方法是转换回常规索引的方法,即reset_index()方法

# 多索引方法是转换回常规索引的方法,即reset_index()方法
fer2013_usage = fer2013.groupby(['emotion', 'Usage']).Usage.agg([len])
fer2013_usage.reset_index()

在这里插入图片描述

对统计的次数进行从小到大的顺序进行排序

可以看到emotion和Usage中获取训练集、测试集的数据量不是按多少进行排序
按照从小到大的顺序进行排序,通过by属性(Usage.agg([len])

# 可以看到emotion和Usage中获取训练集、测试集的数据量不是按多少进行排序
# 按照从小到大的顺序进行排序,通过by属性(Usage.agg([len])
fer2013_usage = fer2013.groupby(['emotion', 'Usage']).Usage.agg([len])
fer2013_usage.sort_values(by='len')

在这里插入图片描述

对统计的次数进行从大到小的顺序进行排序

降序排序,即数字较大的排在前面。

fer2013_usage = fer2013.groupby(['emotion', 'Usage']).Usage.agg([len])
# 降序排序,即数字较大的排在前面。
fer2013_usage.sort_values(by='len', ascending=False)

在这里插入图片描述

按多个列进行排序

按多个列进行排序:先emotion,后数据集划分Usage

fer2013_usage = fer2013.groupby(['emotion', 'Usage']).Usage.agg([len])
# 按多个列进行排序:先emotion,后数据集划分Usage
fer2013_usage.sort_values(by=['emotion','len'])

在这里插入图片描述

第一列从小到大,第二列从大到小排序

第一列从小到大,第二列从大到小排序

fer2013_usage = fer2013.groupby(['emotion', 'Usage']).Usage.agg([len])
# 第一列从小到大,第二列从大到小排序
fer2013_usage.sort_values(by=['emotion', 'len'], ascending=[True, False])

在这里插入图片描述


http://www.kler.cn/a/373571.html

相关文章:

  • Redis 主从同步 总结
  • SpringBoot篇(监控)
  • SAM2的Hiera作为backbone,用ptflops和thop打印的模型参数量差异巨大的可能原因
  • lego-loam mapOptmization 源码注释(一)
  • 数据清理——确保数据质量的关键步骤
  • Go:map的概念和使用
  • 新160个crackme - 088-[KFC]fish‘s CrackMe
  • Spring5学习记录(二)之IOC容器管理(基于注解方式)
  • Python(包和模块)
  • VB中的安全性考虑,如防止SQL注入、XSS攻击等
  • 【安全解决方案】深入解析:如何通过CDN获取用户真实IP地址
  • 「Mac畅玩鸿蒙与硬件6」鸿蒙开发环境配置篇6 - 理解鸿蒙项目结构
  • C++的输入与输出
  • Android Handler消息机制(五)-HandlerThread完全解析
  • 【Linux网络】UdpSocket
  • 网络安全知识见闻终章 ?
  • 深度学习基础(2024-10-30更新到tensor相关)
  • 灵动AI:科技改变未来
  • Linux 线程概念
  • 安装使用docker harbor并推送镜像到仓库
  • 3个方法将苹果手机照片备份至苹果电脑
  • python:ADB通过包名打开应用
  • 华为OD机试真题-任务最优调度-2024年OD统一考试(E卷)
  • 我自己的资料整理导引(二):知识循环笔记法
  • 从零开始学链表:数据结构的基础与应用
  • 如何防止U盘盗取电脑数据?