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

LUZ*_*UZO 1 python dataframe apache-spark pyspark

我需要将数据帧转换为 RDD,并需要对其应用一些核心操作。尝试了以下事情。它正在转换为列表、行或元组格式。但一些核心功能或不适用于 .split() 等功能。

尝试了以下方法:

df.rdd.map(list)
Run Code Online (Sandbox Code Playgroud)

或者

df.rdd.map(tuple)
Run Code Online (Sandbox Code Playgroud)

或者

df.rdd
Run Code Online (Sandbox Code Playgroud)

我正在尝试的示例代码

rdd=load_df.rdd.map(list)
conv_rdd= rdd.map(lambda x:x.split(","))
Run Code Online (Sandbox Code Playgroud)

需要从这里开始执行一些操作

ern*_*t_k 5

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

现在,Row没有.split办法。您可能想在行的某个字段上运行它。所以你需要打电话

df.rdd.map(lambda x:x.stringFieldName.split(","))
Run Code Online (Sandbox Code Playgroud)

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