2024-10-01 00:32:48 发布
网友
我想添加一个列来为列中的值生成唯一的数字,但随机生成的值在每次运行时都应该是固定的
例如:我有一个df as
因此,每次跑步时,Harry的值应该是xxyyzz,Misha的值应该是gfddhh。 它不应该每次都产生任何随机数
我使用了以下代码,但它不起作用:
df=df.withColumn(“'Unique_Name',uuid.uuid5(uuid.NAMESPACE_DNS,'Name'))
它给出了一个错误,我试着将它转换为str,但错误仍然是一样的
任何帮助都将不胜感激
您可以使用udf:
from pyspark.sql import functions as F import uuid @F.udf def create_uuid(name): return str(uuid.uuid5(uuid.NAMESPACE_DNS,name)) df.withColumn("Unique_Name",create_uuid('Name')).show(truncate=False)
输出:
+ -+ + |name |Unique_Name | + -+ + |Harry|195d4fd9-f3e0-50fb-8e70-fa31078bdbf9| |Misha|1f473375-c514-5495-8ef3-a079548ffcfd| + -+ +
您可以使用udf:
输出:
相关问题 更多 >
编程相关推荐