Pyspark spark ML中的矢量汇编程序转换器挂起

Pyspark spark ML中的矢量汇编程序转换器挂起,pyspark,apache-spark-mllib,apache-spark-ml,Pyspark,Apache Spark Mllib,Apache Spark Ml,我有一个ML管道挂起很长时间而没有完成,所以我划分了步骤并检查每个步骤的输出。 我发现VectorAssembler在小数据集上挂起了很长时间 当我运行show()步骤时,它将永远挂起。 我还通过使用0进行插补验证了问题不是由于空值引起的 df2_impute = df2.na.fill(0) continuousCols = numeric_columns+various_cols+additionalFlds HashedInputs = [c + "_hashed" for c in ca

我有一个ML管道挂起很长时间而没有完成,所以我划分了步骤并检查每个步骤的输出。 我发现VectorAssembler在小数据集上挂起了很长时间 当我运行show()步骤时,它将永远挂起。 我还通过使用0进行插补验证了问题不是由于空值引起的

df2_impute = df2.na.fill(0)
continuousCols = numeric_columns+various_cols+additionalFlds
HashedInputs = [c + "_hashed" for c in categorical_columns] +[d for d in continuousCols if d not in 
               [f for f in date_columns]]
assembler = VectorAssembler(inputCols=HashedInputs,outputCol="features")
df3 =assembler.transform(df2_impute)
df3.show()
分类列使用FeatureHasher散列,因此它们现在是向量。 continuousCols是数值。
原因是什么?

您是否在任何阶段使用管道?你能出示df2_插补表吗?花这么长时间可能是因为你给出了错误的专栏。任务不长,但有些输入错误。你能在什么地方给我一个df2_插补数据帧的样本吗?我发现了问题。这是前一个阶段,即每个分类列的featureHasher。出于某种原因,它导致了组件挂起。当我在汇编程序之前向数据帧添加重新分区时,它很快就完成了。我想知道为什么featureHasher创建了如此扭曲的数据帧。