DataFrame API应用案例

时间:2017-06-17 19:38:50   收藏:0   阅读:4054

DataFrame API

1、collect与collectAsList

、 collect返回一个数组,包含DataFrame中的全部Rows

  collectAsList返回一个Java List,包含DataFrame中包含的全部Rows

  技术分享

  技术分享

2、count

  返回DataFrame的rows的个数

  技术分享

 3、first

  返回第一个row

  技术分享

4、head

  不带参数的head方法,返回DataFrame的第一个Row。指定参数n时,则返回前那个Rows

  技术分享 

 5、show  

  不带参数的show,显示前20个Rows,指定个数n,则显示n个

  技术分享

6、take

  返回DataFrame前n个Rows

  技术分享

7、cache

  将DataFrame缓存到内存中

8、Columns

  以数组的形式返回DataFrame的全部列名

  技术分享

9、dtypes

  以数组的形式返回DataFrame的所有列名及其对应的数据类型

  技术分享

10、explain

  用于调试的目的,不带参数时,仅将DataFrame的物理计划打印到控制台上;当指定参数extended为true时,打印所有计划到控制台上,包括物理计划、逻辑计划

  技术分享

11、isLocal

  如果collect与take方法在本地运行时,返回true

  技术分享

12、printSchema

  以树形结构将DataFrame的Schema信息打印到控制台

  技术分享

13、registerTempTable

  将DataFrame注册为指定名字的临时表

  技术分享   

14、schema

  返回DataFrame的Schema信息,对应类型为StructType

  技术分享

15、toDF

  不带参数的toDF返回它本身,带字符串数组的参数时,返回新的DataFrame,该DataFrame重命名了各列名

  技术分享

16、agg

  将DataFrame提供不需要经过groups就可以执行的统计操作

  技术分享

17、apply

  根据指定列名返回DataFrame的列,类型为Column

  技术分享  

18、as

  使用别名创建DataFrame

19、distinct

  返回对DataFrame的Rows去重后的DataFrame

  技术分享

20、except

  返回DataFrame,包含当前Frame的Rows,同时这些Rows不在另一个Frame中。相当于两个DataFrame做减法

  技术分享

21、explode

  返回一个新的DataFrame,其中原来的每一列被指定的函数扩展成零行或多行  

  技术分享  

  技术分享

22、filter

  按参数指定的sql表达式的条件过滤DataFrame

  技术分享

23、groupBy

  使用一个或多个指定的列队DataFrame进行分组,以便对他们执行聚合操作

  技术分享 

24、intersect

  取两个DataFrame中同时存在的Rows,返回DataFrame

  技术分享

25、join

  技术分享    

26、limit

  返回DataFrame的前n个Rows

  技术分享

27、orderBy和sort

  按指定的一列或多列进行排序,分别支持字符串或Column的参数列表

  技术分享

  技术分享

28、sample

  按指定因子对DataFrame的Rows进行抽样,如果指定withReplacement为true时,使用指定的种子或随机的种子进行替换。

  技术分享

29、select

  从DataFrame中选取指定的列,返回DataFrame,指定列有三种方式,可以用列名字符串的重复参数,或Column重复参数及列名表达式的多个参数指定

  技术分享

  技术分享

30、unionAll

  联合调用者和参数这两个DataFrame的Rows

  技术分享  

31、withColumn和withColumnRenamed

  对DataFrame列进行操作,withColumn增加列信息,withColumnRenamed对列进行重命名

  技术分享

32、save

  保存到指定路径下

  技术分享

  技术分享

33、saveAsParquetFile

  保存到数据源为parquet的指定路径下

  技术分享

  技术分享

34、flatMap

  对DataFrame中Rows进行处理,并且处理结果

  技术分享

35、foreach

  技术分享  

36、map和mapPartitions

  map将DataFrame的Row按指定的函数参数映射成R实例,并返回以R为元素的类型的RDD实例。mapPartitions类似

  技术分享

37、repartition

  返回一个DataFrame,该DataFrame按指定numPartitions对原DataFrame进行重分区

  技术分享

38、toJSON

  把DataFrame的内容用包含json字符串的RDD返回

  技术分享

39、queryExecution

  返回DataFrame的查询执行语句,包含逻辑计划和物理计划

  技术分享

 

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!