Spark UDF: 将'男' 转换成 'male','女' 转换成 'famale' 自定义函数
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|
+------+------+----------------+
原文地址: https://www.cveoy.top/t/topic/oSRp 著作权归作者所有。请勿转载和采集!