gpt4 book ai didi

scala - 如何将 RowMatrix 转换为 BDM(Breeze Dense Matrix)以及更多问题

转载 作者:行者123 更新时间:2023-12-02 08:22:30 31 4
gpt4 key购买 nike

尝试将 RowMatrix 转换为 BDM(Breeze Dense Matrix),不确定如何进行需要实现

  def getDenseMatrix(A: RowMatrix): BDM[Double] = {
//write code here
}

补充问题:

  1. 如何将 RowMatrix 转换为 Matrix?
  2. 如何访问 RowMatrix 中的特定行?

    for(i <- 0 到 (RowM.numCols().toInt-1)){ //如何访问RowM.rows(i)

  3. 如何访问 RowMatrix 中的特定列?

    for(i <- 0 到 (RowM.numCols().toInt-1)){ //如何访问RowM.rows.map(f=>f(i))

  4. 如何乘以 2 RowMatrices注意:RowMatrix 有一个 API 'multiply' 但它需要 Matrix 类型的参数假设 A 和 B 是 RowMatices,那么 AB = A.multiply(B),这是行不通的,因为 B
    是 RowMatrix 而不是 Matrix
  5. 最后,如何将 BDM 转换为 RowMatrix?

最佳答案

阅读rowMatrix中的源码,要源码,在私有(private)方法中。代码如下:

 def toBreeze(mat:RowMatrix):BDM[Double] = {
val m = mat.numRows()
val n = mat.numCols()
val result = BDM.zeros[Double](m.toInt,n.toInt)
var i = 0

mat.rows.collect().foreach{Vector =>
Vector.foreachActive { case(index,value) =>
result(i,index) = value
}
i+=1
}
result

}

关于scala - 如何将 RowMatrix 转换为 BDM(Breeze Dense Matrix)以及更多问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35708243/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com