003-90-15【SparkSQLDFDS】慈航寺庙山脚下八卦田旁油菜花海深处人家王大爷家女儿用GPT学习DataSet的基本操作

003-90-14【SparkSQL&DF&DS】慈航寺庙山脚下八卦田旁油菜花海深处人家王大爷家女儿用GPT学习DataSet的基本操作

【SparkSQL&DF&DS】Dataset 的创建和使用

  • 【SparkSQL&DF&DS】2,Dataset 的创建和使用
    • 1, 创建
    • 2, show
    • 3, map
    • 4, as
    • 5, select
    • 6 filter && show(1)

【SparkSQL&DF&DS】2,Dataset 的创建和使用

1, 创建

import spark.implicits._
//
// import spark.implicits._ 是一条常见的导入语句,用于在 Spark 中导入隐式转换的相关功能。
// 在 Spark 中,隐式转换是一种机制,它允许您在使用 DataFrame 或 Dataset 时,对其进行一些方便的操作,
// 例如使用 DataFrame 的 .as[T] 方法将其转换为 Dataset,或者使用 Dataset 的 .toDF() 方法将其转换为 DataFrame。
// 通过导入 spark.implicits._,您可以自动应用这些隐式转换,而无需显式地调用相关的转换方法。
//
// 以下是一个示例,展示了如何使用 import spark.implicits._ 导入隐式转换:
// import org.apache.spark.sql.SparkSession
// import spark.implicits._ // 导入隐式转换
// val spark = SparkSession.builder()
//   .appName("Example")
//   .getOrCreate()
// // 创建一个 DataFrame
// val df = spark.read.format("csv").load("path/to/data.csv")
// // 使用隐式转换的功能,将 DataFrame 转换为 Dataset
// val ds = df.as[MyClass]
// // 对 Dataset 执行一些操作
// val filteredDs = ds.filter(_.age > 30)
// // 将 Dataset 转换回 DataFrame
// val newDf = filteredDs.toDF()// $example on:create_ds$
// Encoders are created for case classes
val caseClassDS : Dataset[Person] = Seq(Person("Andy", 32)).toDS()

2, show

caseClassDS.show()
// +----+---+
// |name|age|
// +----+---+
// |Andy| 32|
// +----+---+

3, map

// Encoders for most common types are automatically provided by importing spark.implicits._
val primitiveDS = Seq(1, 2, 3).toDS()
primitiveDS.map(_ + 1).collect() // Returns: Array(2, 3, 4)

4, as

// DataFrames can be converted to a Dataset by providing a class. Mapping will be done by name
val path = "spark-demo/src/main/resources/people.json"
val peopleDS = spark.read.json(path).as[Person]
peopleDS.show()
// +----+-------+
// | age|   name|
// +----+-------+
// |null|Michael|
// |  30|   Andy|
// |  19| Justin|
// +----+-------+

5, select

peopleDS.select("name").show
// +-------+
// |   name|
// +-------+
// |Michael|
// |   Andy|
// | Justin|
// +-------+

6 filter && show(1)

peopleDS.filter($"age" > 18).show
// +---+------+
// |age|  name|
// +---+------+
// | 30|  Andy|
// | 19|Justin|
// +---+------+
peopleDS.show(1)
// +----+-------+
// | age|   name|
// +----+-------+
// |null|Michael|
// +----+-------+
// $example off:create_ds$

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/631085.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【期末总复习】计算机视觉理论与实践

1、计算机视觉的三大任务 分类、检测(定位)、分割(语义和实例) 2、生成对抗网络的基本概念 生成对抗网络GAN是一种用于生成模型的机器学习框架。它由两个主要组件组成:生成网络和判别网络。生成网络试图生成与真实数…

【LeetCode】206. 反转链表

leetcode链接 206. 反转链表 #include <stdio.h>struct ListNode {int val;struct ListNode* next; }; typedef struct ListNode ListNode;struct ListNode* reverseList1(struct ListNode* head) {if (head ! NULL) {ListNode* n1 NULL;ListNode* n2 head;ListNode*…

day4:多点通信与域套接字

思维导图 使用tftp实现简单文件的上传 #include <head.h> #define SER_PORT 69 #define SER_IP "192.168.125.223" int link_file() {int sfdsocket(AF_INET,SOCK_DGRAM,0);if(sfd-1){perror("socket error");return -1;}return sfd; } int filedow…

什么是小程序?特点和技术架构详解

小程序是一种新的移动应用程序格式&#xff0c;一种结合了 Web 技术以及客户端技术的混合解决方案。 传统的原生应用运行起来比较流畅&#xff0c;但是也有天然的基因缺陷&#xff1a; 不支持动态化&#xff0c;发布周期长需要开发Android和iOS两套代码&#xff0c;开发成本高…

引领游戏产业的未来:武汉灰京文化的创新之路

随着科技的不断发展和游戏产业的蓬勃发展&#xff0c;武汉灰京文化作为游戏行业的一颗新星&#xff0c;正在以其专业、创新、诚信的理念&#xff0c;不断引领游戏产业的未来。公司表示将继续致力于为玩家创造更多令人振奋的游戏体验&#xff0c;成为游戏产业中的永不停歇的创新…

本地电脑远程控制工控现场一台丰炜PLC上,实现读写与监控PLC程序

准备工作 一台可联网操作的电脑一台单网口的远程透传网关及博达远程透传配置工具网线一条&#xff0c;用于实现网络连接和连接PLC一台丰炜 PLC及其编程软件一张4G卡或WIFI天线实现通讯(使用4G联网则插入4G SIM卡&#xff0c;WIFI联网则将WIFI天线插入USB口&#xff09; 第一步…

【C语言基础考研向】05 scanf读取标准输入超详解

文章目录 一.scanf函数的原理 样例问题原因解决方法 二.多种数据类型混合输入 错误样例正确样例 一.scanf函数的原理 C语言未提供输入/输出关键字&#xff0c;其输入和输出是通过标准函数库来实现的。C语言通过scanf函数读取键盘输入&#xff0c;键盘输入又被称为标准输入。…

khbc靶场小记(upload 666靶场)

尝试上传正常的png jpg gif php的格式的文件发现老是提示烦人的消息&#xff08;上传不成功&#xff09;&#xff1b; 通过抓包对MIME进行爆破没爆出来&#xff0c;当时可能用成小字典了&#xff1b; 猜测可能是把后缀名和MIME绑定检测了&#xff1b; 反正也没思路&#xff0c;…

Linux shell美化 zsh+oh-my-zsh+power10k

文章目录 安装zsh安装on-my-zsh安装power10k主题安装power10k将oh-my-zsh主题改为power10k字体 设置安装字体配置字体 power10k配置相关插件安装zsh-autosuggestionszsh-syntax-highlighting安装插件完成&#xff0c;重新加载配置文件 美化效果示意&#xff1a; 安装zsh 安装…

node.js常用命令

查看node版本 node -v npm基本命令 查看npm版本 npm -v 查看npm帮助 npm help 查看npm使用的所有文件夹 npm help folders 查看模块列表 npm list 更新 npm 更新至最新的版本&#xff1a; npm install npmlatest -g 更新至即将发布的版本&#xff1a; npm install npmnext -g…

学生护眼台灯哪种好一点?分享专业的学生护眼台灯

当代孩子的学业依旧繁重&#xff0c;而随着孩子年龄的增长&#xff0c;作业功课也会越来越多&#xff0c;每天用眼的时间也会越来越长。而且现在很多孩子晚上都会学习到很晚&#xff0c;如果光源不合适是很容易导致视力下降的&#xff01; 因此我认为一款好的台灯是每个家庭必备…

Peter算法小课堂—并查集

我们先来看太戈编程467题 攀亲戚 题目描述&#xff1a; 最近你发现自己和古代一个皇帝长得很像&#xff1a;都有两个鼻子一个眼睛&#xff0c;你想知道这皇帝是不是你的远方亲戚&#xff0c;你是不是皇亲国戚。目前你能掌握的信息有m条&#xff0c;关于n个人&#xff1a;第i条…

vscode开发java项目

安装java扩展 创建项目 vscode命令行面板搜索java命令行 出现如下提示 No build tools构建项目如下 java项目使用vscode单独打开文件夹&#xff08;工作区中运行有问题&#xff09;&#xff0c;vscode中可直接点击右上角运行按钮执行 maven中spring boot项目 代码错误可以点…

利用IP应用场景API识别真实用户

引言 在当今数字化时代&#xff0c;随着互联网的普及和应用的广泛&#xff0c;验证用户身份的重要性变得越来越突出。在许多场景中&#xff0c;特别是在涉及安全性、用户体验以及个人隐私保护方面&#xff0c;确定用户的真实身份至关重要。而IP应用场景API则是一种强大的工具&…

机器学习与数据科学-专题1 Python正则表达式-【正则表达式入门-1】

文章目录 第一关相关知识任务要求代码 第二关相关知识任务要求代码 第三关相关知识注意任务描述代码 第一关 相关知识 为了完成本关任务&#xff0c;你需要掌握&#xff1a; 在 Python 中使用正则表达式&#xff1b; 最基础正则表达式&#xff1b; 正则匹配函数。 在 Python…

剑指offer面试题6 重建二叉树

考察点 树知识点 链表中每个结点最少有1个指针&#xff0c;最多2个(双重链表)&#xff0c;前后结点是一对一的关系&#xff0c;而树中每个结点指针数量可以更多一些&#xff0c;也就是说树中的结点存储着更多其它结点的信息&#xff0c;前后结点是一对多的关系(其中靠前的结点…

[力扣 Hot100]Day8 无重复字符的最长子串

题目描述 给定一个字符串 s &#xff0c;请你找出其中不含有重复字符的 最长子串 的长度。 出处 思路 使用双指针构成一个滑动窗口&#xff0c;维护窗口内的字符不重复&#xff0c;逐步右移右指针&#xff0c;当右指针所指元素已经在窗口内时&#xff0c;左指针右移到和右指…

1308. 全排列的结果-深度优先搜索-DFS

代码&#xff1a; #include <iostream> using namespace std; int n; int a[10]; bool r[10]; void print(int k) {for(int i1; i<k; i){cout<<a[i]<<" ";}cout<<endl; } void fun(int k) {for(int i1; i<n; i){if(r[i] false){a[k…

第一讲_HarmonyOS应用开发环境准备

HarmonyOS应用开发环境准备 1. 知识储备2. 环境搭建2.1 安装node.js2.2 配置node.js2.3 安装命令行工具2.4 安装DevEco Studio2.5 配置DevEco Studio 1. 知识储备 HarmonyOS提供了一套UI开发框架&#xff0c;即方舟开发框架&#xff08;ArkUI框架&#xff09;。方舟开发框架可…

springboot minio 工具类,一站式解决

注意 minio 新版本有9000和9090两个端口&#xff0c;web访问是9000&#xff0c;但走api上传和访问都是9090端口 引入pom <dependency><groupId>io.minio</groupId><artifactId>minio</artifactId><version>8.2.0</version></d…