相当于 Scala Dataset#transform 方法的 Pyspark 变换方法 [英] Pyspark transform method that's equivalent to the Scala Dataset#transform method

查看:21
本文介绍了相当于 Scala Dataset#transform 方法的 Pyspark 变换方法的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

Spark Scala API 有一个 Dataset#transform 方法,可以轻松链接自定义 DataFrame 转换,如下所示:

The Spark Scala API has a Dataset#transform method that makes it easy to chain custom DataFrame transformations like so:

val weirdDf = df
  .transform(myFirstCustomTransformation)
  .transform(anotherCustomTransformation)

我没有看到 transform 方法="nofollow noreferrer">文档中的pyspark.

I don't see an equivalent transform method for pyspark in the documentation.

是否有 PySpark 方法来链接自定义转换?

Is there a PySpark way to chain custom transformations?

如果没有,如何对 pyspark.sql.DataFrame 类进行猴子修补以添加 transform 方法?

If not, how can the pyspark.sql.DataFrame class be monkey patched to add a transform method?

更新

转换方法PySpark 3.0.

推荐答案

实施:

from pyspark.sql.dataframe import DataFrame

def transform(self, f):
    return f(self)

DataFrame.transform = transform

用法:

spark.range(1).transform(lambda df: df.selectExpr("id * 2"))

这篇关于相当于 Scala Dataset#transform 方法的 Pyspark 变换方法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆