Spark SQL - 操作数据帧

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

具体步骤如下:

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

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

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

    • 显示数据帧内容和模式。
    • 对学生数据帧进行投影操作,如显示姓名与年龄字段。
    • 对学生数据帧进行过滤操作,如查询全部女生记录和20岁以上女生记录。
    • 对学生数据帧进行统计操作,如统计总记录数、分组统计男女生总年龄、平均年龄、最大年龄和最小年龄等。
    • 对学生数据帧进行排序操作,如按年龄升序排列、按年龄降序排列、先按性别升序排列再按年龄降序排列等。
相关推荐
库库的数据库笔记6 小时前
国产信创数据库的MySQL兼容性深度对比解析
大数据·数据库·mysql·oceanbase·政务
Elastic 中国社区官方博客7 小时前
我们如何通过 70 多个拉取请求,将 OpenTelemetry Java agent 迁移到 invokedynamic
java·大数据·开发语言·elasticsearch·搜索引擎·全文检索·es
珠海西格电力9 小时前
零碳园区管理系统的性能评估体系的行业标准
大数据·网络·人工智能·物联网·机器学习·架构·能源
杨先生哦9 小时前
SOC告警研判实战:海量告警降噪、误报甄别、内网风险处置全流程(上岗必用)
大数据
一线数智10 小时前
朱鹰:人的判断力,比算力更重要
大数据·人工智能
用户36105886261210 小时前
Flink ResourceManager启动流程源码深度剖析:从ClusterEntrypoint到Slot分配的完整链路
大数据
用户36105886261211 小时前
Flink ApplicationMaster启动流程源码深度剖析:从YARN提交到JobMaster启动的完整链路
大数据·flink
初心未改HD12 小时前
DSH Skill开发实战:SKILL.md是给LLM看的操作手册,不是给人看的README,踩了4个坑
java·大数据·开发语言
程序 代码狂人12 小时前
据仓库常见表类型详解(面试完整版,金融数仓适用)
大数据
阿里云大数据AI技术12 小时前
云栖实录|Hologres 5.0全新发布:Agent Native 的全模态实时数仓
大数据·人工智能·agent