Skip to content

Commit 0b1e190

Browse files
committed
use extractor for vectors in RowMatrix.scala
1 parent e961805 commit 0b1e190

File tree

1 file changed

+11
-13
lines changed
  • mllib/src/main/scala/org/apache/spark/mllib/linalg/distributed

1 file changed

+11
-13
lines changed

mllib/src/main/scala/org/apache/spark/mllib/linalg/distributed/RowMatrix.scala

Lines changed: 11 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -528,21 +528,21 @@ class RowMatrix(
528528
iter.flatMap { row =>
529529
val buf = new ListBuffer[((Int, Int), Double)]()
530530
row match {
531-
case sv: SparseVector =>
532-
val nnz = sv.indices.size
531+
case SparseVector(size, indices, values) =>
532+
val nnz = indices.size
533533
var k = 0
534534
while (k < nnz) {
535-
scaled(k) = sv.values(k) / q(sv.indices(k))
535+
scaled(k) = values(k) / q(indices(k))
536536
k += 1
537537
}
538538
k = 0
539539
while (k < nnz) {
540-
val i = sv.indices(k)
540+
val i = indices(k)
541541
val iVal = scaled(k)
542542
if (iVal != 0 && rand.nextDouble() < p(i)) {
543543
var l = k + 1
544544
while (l < nnz) {
545-
val j = sv.indices(l)
545+
val j = indices(l)
546546
val jVal = scaled(l)
547547
if (jVal != 0 && rand.nextDouble() < p(j)) {
548548
buf += (((i, j), iVal * jVal))
@@ -552,11 +552,11 @@ class RowMatrix(
552552
}
553553
k += 1
554554
}
555-
case dv: DenseVector =>
556-
val n = dv.values.size
555+
case DenseVector(values) =>
556+
val n = values.size
557557
var i = 0
558558
while (i < n) {
559-
scaled(i) = dv.values(i) / q(i)
559+
scaled(i) = values(i) / q(i)
560560
i += 1
561561
}
562562
i = 0
@@ -620,11 +620,9 @@ object RowMatrix {
620620
// TODO: Find a better home (breeze?) for this method.
621621
val n = v.size
622622
v match {
623-
case dv: DenseVector =>
624-
blas.dspr("U", n, alpha, dv.values, 1, U)
625-
case sv: SparseVector =>
626-
val indices = sv.indices
627-
val values = sv.values
623+
case DenseVector(values) =>
624+
blas.dspr("U", n, alpha, values, 1, U)
625+
case SparseVector(size, indices, values) =>
628626
val nnz = indices.length
629627
var colStartIdx = 0
630628
var prevCol = 0

0 commit comments

Comments
 (0)