繁体   English   中英

Spark Scala MLlib分配语法

[英]Spark Scala MLlib assignment syntax

我已经浏览了https://spark.apache.org/docs/latest/ml-statistics.html上的指南,并且注意到他们正在使用以下语法进行val分配:

val Row(coeff1: Matrix) = Correlation.corr(df, "features").head

有人可以详细说明这是什么意思吗? 似乎类似于Scala处理正则表达式组提取的方式...

它只不过是模式匹配 为了使其更明显,您将其重写为:

val coeff1 = Correlation.corr(df, "features").head match {
  case Row(coeff1: Matrix) => coeff1
}

换句话说,它只是尝试匹配通过.head调用返回的对象,并且在成功匹配后,它将创建对包含在返回的RowMatrix对象的引用( coeff1 )。

暂无
暂无

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

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