spark-stringindexer与onehotcoderestimator之比较

ctehm74n  于 2021-05-19  发布在  Spark
关注(0)|答案(1)|浏览(361)

我正在学习spark,我在其中一个教程中有下面的代码。我知道Dataframe是一个热编码在下面的代码,但我不明白的是为什么要使用stringindexer?stringindexer是否应与onehotencoderestimator结合使用?val si=new stringindexer().sethandleinvalid(“keep”).setinputcol(procttypecol).setoutputcol(procttypesioutcol)

val ohe = new OneHotEncoderEstimator()
      .setHandleInvalid("keep")
      .setInputCols(Array(si.getOutputCol))
      .setOutputCols(Array(ProductTypeOHEOutCol))

val pipeline = new Pipeline()
  .setStages(Array(si, ohe))

谢谢

h7wcgrx3

h7wcgrx31#

si将字符串值转换为整数并在ohe编码中生成整数,如果您的列是整数,如1、2、3,则可以直接应用ohe。但是如果你的标签是像a,b,c这样的字符串,你必须先用si,然后用chain-ohe

相关问题