在多列上使用 df.withColumn()
Using df.withColumn() on multiple columns
我正在使用 python 和 pyspark 来扩展 SPSS Modeler。
我想操作 ~5000 列,因此使用以下结构:
for target in targets:
inputData = inputData.withColumn(target+appendString, function(target))
这很慢。是否有更有效的方法对所有目标列执行此操作?
targets
包含要使用的列名列表,function(target)
是一个占位符,我可以在其中处理不同的列,例如添加和划分。
如果你能帮助我,我会很高兴:)
潘达约
试试这个:
inputData.select(
'*',
*(function(target).alias(target+appendString) for target in targets)
)
我正在使用 python 和 pyspark 来扩展 SPSS Modeler。
我想操作 ~5000 列,因此使用以下结构:
for target in targets:
inputData = inputData.withColumn(target+appendString, function(target))
这很慢。是否有更有效的方法对所有目标列执行此操作?
targets
包含要使用的列名列表,function(target)
是一个占位符,我可以在其中处理不同的列,例如添加和划分。
如果你能帮助我,我会很高兴:)
潘达约
试试这个:
inputData.select(
'*',
*(function(target).alias(target+appendString) for target in targets)
)