【pyspark】DataFrameのレコード毎に処理を行う。UDF(User Defined Function)
2020年09月21日 00時10分07秒
DataFrameのレコード毎に特定の処理を行いたい場合、UDF(User Defined Function)の例。
from pyspark.sql.functions import udf
from pyspark.sql.functions import udf
from pyspark.sql import SparkSession
from pyspark.sql.functions import struct, lit
from pyspark.sql.types import StringType
def f(row):
str = f"{row['name']}は{row['age']}歳です"
return str
udf_func = udf(f)
spark = SparkSession.builder.getOrCreate()
d = [
{'name': 'Tanaka', 'age': 10},
{'name': 'Suzuki', 'age': 15},
{'name': 'Satou', 'age': 19}
]
df = spark.createDataFrame(d)
result_df = df.withColumn('udf_result', udf_func(struct(*df.schema.names)))
result_df.show(truncate=False)
+---+------+-------------------+
|age|name |udf_result |
+---+------+-------------------+
|10 |Tanaka|Tanakaは10歳です|
|15 |Suzuki|Suzukiは15歳です |
|19 |Satou |Satouは19歳です |
+---+------+-------------------+
PR
Comment
No title
А здесь mypornopizza.com ты найдешь секс видео