Spark UDF: 将'男' 转换成 'male','女' 转换成 'famale' 自定义函数

以下是将'男' 转换成 'male',将'女' 转换成 'famale' 的自定义 UDF 函数代码:

from pyspark.sql.functions import udf
from pyspark.sql.types import StringType

def gender_converter(gender):
    if gender == '男':
        return 'male'
    elif gender == '女':
        return 'famale'
    else:
        return None

gender_udf = udf(gender_converter, StringType())

使用方法

from pyspark.sql.functions import col

df = spark.createDataFrame([
    ('male', 20),
    ('famale', 30),
    ('unknown', 40)
], ['gender', 'age'])

df = df.withColumn('gender_converted', gender_udf(col('gender')))
df.show()

输出

+------+------+----------------+
|gender|   age|gender_converted|
+------+------+----------------+
|  male|    20|            male|
|famale|    30|          famale|
|unknown|    40|            null|
+------+------+----------------+
Spark UDF: 将'男' 转换成 'male','女' 转换成 'famale' 自定义函数

原文地址: https://www.cveoy.top/t/topic/oSRp 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录