DataFrame 介绍_创建_read | 学习笔记

简介: 快速学习 DataFrame 介绍_创建_read

开发者学堂课程【大数据 Spark 2020版(知识精讲与实战演练)第三阶段DataFrame 介绍_创建_read】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/690/detail/12047


DataFrame 介绍_创建_read

 

内容介绍

一、createDataFrame 的创建

二、read 的创建

 

一、createDataFrame 的创建

createDataFrame 的创建可以通过 spark.createDataFrame 的各个重载方法,其中各色重载方法可通过 rdd 来创建,也可以通过 rowRDD 来创建,还可以通过java的list来创建,也可以通过 java 的 RDD 来创建等等,以上方法很多,只需要在createDataFrame()方法中传入集合参数即可,createDataFrame(personList)。

@Test

def dataframe2(): unit = {

//第一步:创建 SparkSession

val spark = Sparksession.builder()

.appName( name ="dataframe1")

.master( master = "loca1[6]")

.getorcreate()

//第二步:导入隐式转换

import spark.implicits._

//第三步:创建一个 list,而 list 当中放的是 person

val personList = seq(Person(" zhangsan",15),Person("lisi",20))

//1.toDF ,可以作用于 PersonList,因而可以直接使用 seq 来调用 toDF

val df1 = personList.toDF()

//同时也可以将其作为一个转换作用于RDD上,spark.sparkcontext.parallelize(personList)创建一个RDD

val df2 = spark.sparkcontext.parallelize(personList).toDF()

//2.createDataFrame

//3.DataFrameReader将其简称为 read,只需要在 createDataFrame()方法中传入集合参数即可,createDataFrame(personList)。

Val df3 = spark.createDataFrame(personList)

}

}

case class Person( name: string, age: Int)

 

二、read的创建

Read 的使用也很重要,首先有一个北京10年到15年 PM 的外部数据集,该数据集在 RDD 部分已经使用过一次,下面演示,怎么通过 DataFrame 如何读取外部的文件,建议和 RDD 的读取做对比理解。

1669106643422.jpg

@Test

def dataframe2(): unit = {

//第一步:创建 SparkSession

val spark = Sparksession.builder()

.appName( name ="dataframe1")

.master( master = "loca1[6]")

.getorcreate()

//第二步:导入隐式转换

import spark.implicits._

//第三步:创建一个 list,而 list 当中放的是 person

val personList = seq(Person(" zhangsan",15),Person("lisi",20))

//1.toDF ,可以作用于 PersonList,因而可以直接使用 seq 来调用 toDF

val df1 = personList.toDF()

//同时也可以将其作为一个转换作用于RDD上,spark.sparkcontext.parallelize(personList)创建一个RDD

val df2 = spark.sparkcontext.parallelize(personList).toDF()

//2.createDataFrame ,只需要在 createDataFrame()方法中传入集合参数即可,createDataFrame(personList)。

 Val df3 = spark.createDataFrame(personList)

//3.DataFrameReader 将其简称为 read

//创建变量命名为 df4,通过 sprak.read 即可读取,之后在确定读取格式,在此为csv,定义路径位置,至此就完成了一个 DataFrame 的读取。

val df4 = spark.read.csv( path = "dataset/BeijingPN20100101_20151231_noheader.csv")

//查看 read 读取的 df4是否成功

df4.show()

}

}

case class Person( name: string, age: Int)

至此 read 创建 RDD 的方式也讲解完毕,以上三种方式全部讲解完毕。运行df4.show(),出现如图的运行结果,可以看见结果皆为数据集中的每一行,但此处有一个小问题:在显示处并没有 header。在后面的系统章节会进行讲解。

1669106740412.jpg

以上就是读取 DataFrame 的三种形式。

相关文章
|
C++ Python
VS Code按住ctrl不能跳转到定义/函数(Python)
VS Code按住ctrl不能跳转到定义/函数(Python)
3878 0
VS Code按住ctrl不能跳转到定义/函数(Python)
|
机器学习/深度学习 算法 数据可视化
【机器学习】十大算法之一 “PCA”
PCA(Principal Component Analysis,主成分分析)是一种广泛使用的线性降维算法,在机器学习领域被广泛应用。通俗地说,它是一种通过将高维数据映射到低维数据,保留数据主要特征的方法。在PCA中,数据被投影到一个新的低维抽象空间中,使新的特征集能最大化地解释数据集的方差,我们可以选择保留最大方差的前k个特征值。通常,PCA被用于降维,但它也被用作一种特征提取算法。在本文中,我们介绍了PCA算法的基本原理,讨论了它的应用,以及在Python中如何实现。
1639 0
【机器学习】十大算法之一 “PCA”
|
6月前
|
索引 Python
Python错误 - 'list' object is not callable 的问题定位与解决
出现编程问题并不可怕,关键在于是否可以从中学习与成长。遇到'list' object is not callable这样的错误,我们不仅需要学会应对,更需要了解其背后的原因,避免类似的问题再次出现。记住,Python的强大功能和灵活性同时也意味着我们需要对其理解更准确,才能更好的使用它。
756 70
|
10月前
|
数据处理 索引 Python
用Python实现数据录入、追加、数据校验并生成表格
本示例展示了如何使用Python和Pandas库实现学生期末考试成绩的数据录入、追加和校验,并生成Excel表格。首先通过`pip install pandas openpyxl`安装所需库,然后定义列名、检查并读取现有数据、用户输入数据、数据校验及保存至Excel文件。程序支持成绩范围验证,确保数据准确性。
388 14
|
3月前
|
SQL DataWorks 监控
免费玩转阿里云DataWorks!智能Copilot+用户画像实战,开发效率翻倍攻略
DataWorks是阿里云推出的一站式大数据开发与治理平台,具备数据集成、开发、管理、安全及智能监控等功能,支持多行业数据中台建设。其可视化界面与强大调度能力,助力企业高效完成数据处理与分析。
548 0
|
JSON Go 数据格式
Go 读取 YAML 配置文件的两种方式
本文介绍了读取 YAML 配置文件的两种方式,第一种是通过 yaml.v3 包,第二种是通过 viper 包。如果是在项目里解析配置文件,推荐使用 viper 包,它支持解析多种格式的配置文件,监听配置文件的更新,修改配置文件等。
1755 1
Go 读取 YAML 配置文件的两种方式
|
关系型数据库 MySQL 分布式数据库
Hbase与MySQL对比,区别是什么?
Hbase与MySQL对比,区别是什么?
803 2
|
数据可视化 Python
我是如何把python获取到的数据写入Excel的?
我是如何把python获取到的数据写入Excel的?
208 2
|
数据采集 数据挖掘 大数据
如何处理 PySpark 中丢失的数据?
【8月更文挑战第13天】
283 0
|
存储 SQL 分布式计算
技术心得记录:深入学习HBase架构原理
技术心得记录:深入学习HBase架构原理