在Spark 3.0.0中,使用transform
方法可以对DataFrame进行转换操作。transform
方法接受一个函数作为参数,该函数将DataFrame的每一行作为输入,并返回一个新的DataFrame。
使用transform
方法的步骤如下:
from pyspark.sql import SparkSession
from pyspark.sql.functions import col
spark = SparkSession.builder.getOrCreate()
data = [("Alice", 25), ("Bob", 30), ("Charlie", 35)]
df = spark.createDataFrame(data, ["Name", "Age"])
def add_prefix(name):
return "Mr. " + name
transform
方法进行转换:transformed_df = df.transform(lambda df: df.withColumn("PrefixedName", add_prefix(col("Name"))))
在上述代码中,transform
方法接受一个lambda函数作为参数,该函数将DataFrame作为输入,并使用withColumn
方法在DataFrame中添加一个新的列"PrefixedName",该列的值是通过调用add_prefix
函数对"Name"列的值进行转换得到的。
最后,transform
方法返回一个新的DataFrametransformed_df
,其中包含了添加了新列的结果。
北极星训练营
腾讯云存储专题直播
云+社区沙龙online第5期[架构演进]
高校公开课
高校公开课
云+社区沙龙online第5期[架构演进]
领取专属 10元无门槛券
手把手带您无忧上云