从RDD创建DataFrame

Posted yy0102

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从RDD创建DataFrame相关的知识,希望对你有一定的参考价值。

1.pandas df 与 spark df的相互转换

df_s=spark.createDataFrame(df_p)

df_p=df_s.toPandas()

 

2. Spark与Pandas中DataFrame对比

http://www.lining0806.com/spark%E4%B8%8Epandas%E4%B8%ADdataframe%E5%AF%B9%E6%AF%94/

 

3.1 利用反射机制推断RDD模式

  • sc创建RDD
  • 转换成Row元素,列名=值
  • spark.createDataFrame生成df
  • df.show(), df.printSchema()

 

3.2 使用编程方式定义RDD模式

  • 生成“表头”
    • fields = [StructField(field_name, StringType(), True) ,...]
    • schema = StructType(fields)
  • 生成“表中的记录”
    • 创建RDD
    • 转换成Row元素,列名=值
  • 把“表头”和“表中的记录”拼装在一起
    • = spark.createDataFrame(RDD, schema)

生成表头:

 生成表中的数据:

把“表头”和“表中的记录”拼装在一起:

 4. DataFrame保存为文件

df.write.json(dir)

以上是关于从RDD创建DataFrame的主要内容,如果未能解决你的问题,请参考以下文章

简述SparkSQL中RDDDataFrameDataSet三者的区别与联系?

RDD之三:RDD创建方式

07 从RDD创建DataFrame

07 从RDD创建DataFrame

如何从 RDD 创建 Spark 数据集

Spark MLlib - 从 RDD[Vector] 特征和 RDD[Vector] 标签创建 LabeledPoint