Spark SQL - 操作数据帧

本教程将通过一个具体的案例来演示如何在Spark SQL中操作数据帧。我们将从获取学生数据帧开始,包括两种方法:一是由数据集转换而来,二是直接读取文件生成数据帧。然后,我们将对数据帧进行各种操作,如投影、过滤、统计和排序等。

具体步骤如下:

  1. 由数据集转换而来的方法

    • 前提是添加了元数据的数据集。
    • 调用数据集的toDF()方法得到数据帧。
    • 查看数据帧的结构和内容。
  2. 直接读取文件生成数据帧的方法

    • 利用spark.read成员的option().csv()方法读取文本文件生成数据帧。
    • 查看学生数据帧的内容。
    • 因为学生文件第一行不是表头,所以生成的数据帧字段名是系统自动生成的。
    • 修改学生数据帧默认字段名。
    • 查看学生数据帧的内容和结构。
    • 修改数据帧字段类型。
    • 数据帧改名。
  3. 操作学生数据帧

    • 显示数据帧内容和模式。
    • 对学生数据帧进行投影操作,如显示姓名与年龄字段。
    • 对学生数据帧进行过滤操作,如查询全部女生记录和20岁以上女生记录。
    • 对学生数据帧进行统计操作,如统计总记录数、分组统计男女生总年龄、平均年龄、最大年龄和最小年龄等。
    • 对学生数据帧进行排序操作,如按年龄升序排列、按年龄降序排列、先按性别升序排列再按年龄降序排列等。
相关推荐
isNotNullX1 小时前
仓储管理最全框架:6大流程、8项指标、10个管理动作、12个常见问题
大数据·人工智能
国科安芯2 小时前
把接口变成观测量:CANFD收发器状态可观测性驱动的星上故障检测隔离与恢复方法
大数据·人工智能·物联网·卫星·抗辐射·通信芯片·载荷
玩美数据4 小时前
海外市场数据服务常用术语与名词解释权威指南
大数据·人工智能
武子康6 小时前
Qwen-Drive 的 91.4 分,究竟选中了什么?
大数据·人工智能·agent
演艺大赏7 小时前
NiFi 集群长期运维:并发线程、content 仓库、日志与漏洞面
大数据
freejackman11 小时前
【工程化】从“单兵作战”到“多引擎架构”:基于门面模式的重构实战
大数据·数据库·hive·sql·测试工具·设计模式·架构
字节跳动数据平台12 小时前
火山引擎知识引擎VeKnow进化之路(上):从“人有数可用”到“AI有智可循”
大数据
Flynn Liang15 小时前
Apache Superset 重要特性详解(三):语义层 / 权限 / 缓存 / 嵌入的实战最佳实践(2026 版)
大数据·clickhouse·数据可视化·架构设计·superset·数据分析平台
小田学Python1 天前
工具调用:让 Agent 从“说”到“做”
大数据·大模型·agent·ai工具·deepseek