繁体   English   中英

Scala- Databricks- 线性回归

[英]Scala- Databricks- Linear Regression

有人可以向我解释以下代码行的含义(在 scala-databricks 中)

val categoricalIndexers = categoricalVariables
  .map(i => new StringIndexer().setHandleInvalid("skip").setInputCol(i)
                .setOutputCol(i+"Index"))
  • StringIndexer的目的是将标签的字符串列映射到标签索引的 ML 列(有关更多详细信息和代码,请参阅Apache Spark 的文档(。
  • 您可以使用setHandleInvalid来选择如何使用StringIndexer处理看不见的标签。 如果您选择“跳过”设置,包含未见过标签的行将被跳过(从输出中删除)。
  • 而代码.setInputCol(i).setOutputCol(i+"Index")结尾的目的是索引字符串变量并返回索引变量; 索引变量的名称是原始字符串变量的名称+“索引”。 例如,让我们使用字符串变量“City”。 一旦字符串变量被索引,索引变量的名称将是 CityIndex。

您可以使用以下几行索引数据集的所有字符串变量:

var categoricalCols = DataSet.dtypes.filter(_._2 == "StringType").map(_._1) 

var indexOutputCols = categoricalCols.map(_ + "_Index")

// Handle string variables
var stringIndexer = new StringIndexer()
                        .setInputCols(categoricalCols)
                        .setOutputCols(indexOutputCols)
                        .setHandleInvalid("skip")

索引变量具有原始名称+“_indexed”。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM