【发布时间】:2023-03-02 23:34:01
【问题描述】:
我有 spark 数据框,其中列 status("Placed","Not Placed") 有两个目标类。
我使用 StringIndexer 将上面的列转换为管道中的索引并执行它。
str_indexer = StringIndexer(inputCol=status,outputCol="status_index").fit(df_train).transform(df_train)
它分配了这些值 - {0: 'Placed', 1: 'Not Placed'}
使用IndextoString将RandomForest算法生成的预测标签再次转换为String,并使用上述StringIndexer(str_indexer)生成的标签
IndexToString(inputCol="prediction",outputCol="status",labels=loaded_model.stages[0].labels).transform(in_indexed)
- 这是将索引转换回字符串的正确方法吗?
- 上述 IndextoString 是否分配了相同的值,即“已放置”为 0,“未放置”为 1?
- 有什么方法可以测试 IndextoString 分配的值是否与 StringIndexer 相同
【问题讨论】:
标签: apache-spark pyspark apache-spark-mllib