如何在pyspark中将Dataframe转换为RDD?

时间:2018-04-27 18:17:04

标签: python apache-spark dataframe pyspark

我需要将数据帧转换为RDD,并且需要在其上应用一些核心操作。 尝试下面的事情。它正在转换为列表,行或元组格式。但是一些核心功能还是没有像.split()那样工作。

尝试了以下方法:

df.rdd.map(list)

df.rdd.map(tuple)

df.rdd

我正在尝试的示例代码

rdd=load_df.rdd.map(list)
conv_rdd= rdd.map(lambda x:x.split(","))

需要从

开始执行一些操作

1 个答案:

答案 0 :(得分:3)

数据框是Row个对象的数据集。运行df.rdd时,返回的值为RDD<Row>类型。

现在,Row没有.split方法。您可能希望在该行的字段上运行它。所以你需要打电话

df.rdd.map(lambda x:x.stringFieldName.split(","))

拆分必须在行的值上运行,而不是Row对象本身。