目录

数组常用方法

列表操作常用方法

集合操作常用方法

 Spark中的集合操作常用方法(转换操作)

使用join()方法连接两个RDD

查看DataFrame数据

show():查看数据 

first()/head()/take()/takeAsList():获取若干条记录

直接在DataFrame对象上进行查询,DataFrame提供了很多查询的方法


数组常用方法

方法

描述

length

返回数组的长度

head

查看数组的第一个长度

tail

查看数组中除了第一个以外的元素

isEmpty

判断数组是否为空

contains(x)

判断数组是否包含元素x

数组是Scala中常用的一种数据结构,数组是一种存储了相同类型元素的固定大小的顺序集合。

列表操作常用方法

方法

描述

def head: A

获取列表的第一个元素

def init:List[A]

返回所有元素,除了最后一个元素

def last:A

获取列表的最后一个元素

def tail:List[A]

返回所有元素,除了第一个元素

def :::(prefix: List[A]): List[A]

在列表开头添加指定列表的元素

def take(n: Int): List[A]

获取列表前n个元素

def contains(elem: Any): Boolean

判断列表是否包含指定元素

 Scala中常用的查看列表元素的方法有:
                head:查看列表的第一个元素。

                tail:查看第一个元素之后的其余元素。

                last:查看列表的最后一个元素。

                Init:查看除最后一个元素外的所有元素。

                take():查看列表前n个元素。

合并两个列表还可以使用concat()方法。
用户可以使用contains()方法判断列表中是否包含某个元素,若列表中存在指定的元素则返回true,否则返回false。

集合操作常用方法

方法

描述

def head: A

获取集合的第一个元素

def init:Set[A]

返回所有元素,除了最后一个

def last:A

获取集合的最后一个元素

def tail:Set[A]

返回所有元素,除了第一个

def ++(elems: A): Set[A]

合并两个集合

def take(n: Int): List[A]

获取列表前n个元素

def contains(elem: Any): Boolean

判断集合中是否包含指定元素

 Spark中的集合操作常用方法(转换操作)

方法

描述

union()

参数是RDD,合并两个RDD的所有元素

intersection()

参数是RDD,求出两个RDD的共同元素

subtract()

参数是RDD,将原RDD里和参数RDD里相同的元素去掉

cartesian()

参数是RDD,求两个RDD的笛卡儿积

使用join()方法连接两个RDD

将有键的一组数据与另一组有键的数据根据键进行连接,是对键值对数据常用的操作之一。

与合并不同,连接会对键相同的值进行合并,连接方式多种多样,包含内连接、右外连接、左外连接、全外连接,不同的连接方式需要使用不同的连接方法。

连接方法如下表。

连接方法

描述

join()

对两个RDD进行内连接

rightOuterJoin()

对两个RDD进行连接操作,确保第二个RDD的键必须存在(右外连接)

leftOuterJoin()

对两个RDD进行连接操作,确保第一个RDD的键必须存在(左外连接)

fullOuterJoin()

对两个RDD进行全外连接

查看DataFrame数据

方法

描述

printSchema

打印数据模式

show

查看数据

first/head/take/takeAsList

获取若干行数据

collect/collectAsList

获取所有数据

show():查看数据 

方法

描述

show()

显示前20条记录

show(numRows:Int)

显示numRows

show(truncate:Boolean)

是否最多只显示20个字符,默认为true

show(numRows:Int,truncate:Boolean)

显示numRows条记录并设置过长字符串的显示格式

first()/head()/take()/takeAsList():获取若干条记录

方法

描述

first

获取第一行记录

head(n:Int)

获取前n行记录

take(n:Int)

获取前n行记录

takeAsList(n:Int)

获取前n行数据,并以列表的形式展现

直接在DataFrame对象上进行查询,DataFrame提供了很多查询的方法

方法

描述

where

条件查询

select/selectExpr/col/apply

查询指定字段的数据信息

limit

查询前n行记录

order by

排序查询

group by

分组查询

join

连接查询

(1)where()方法

DataFrame可以使用where(conditionExpr: String)根据指定条件进行查询

参数中可以使用and或or

该方法的返回结果仍然为DataFrame类型

(2)filter()方法

DataFrame还可使用filter筛选符合条件的数据

2.select()/selectExpr()/col()/apply()方法

(1)select()方法:获取指定字段值

select方法根据传入的string类型字段名,获取指定字段的值,以DataFrame类型返回

(2)selectExpr()方法:对指定字段进行特殊处理

selectExpr:对指定字段进行特殊处理,可以对指定字段调用UDF函数或者指定别名。

selectExpr传入String类型的参数,返回DataFrame对象。

(3)col()/apply()方法

col或者apply也可以获取DataFrame指定字段

col或者apply只能获取一个字段,并且返回对象为Column类型