Vectors in Breeze

Breeze uses two basic vector types-breeze.linalg.DenseVector and breeze.linalg.SparseVector-to represent the two vector types shown earlier.

DenseVector is a wrapper around an array which supports numeric operations. Let's first look at the dense vector computation; we will create a dense vector object using Breeze, and then update index three to a new value.

import breeze.linalg.DenseVector 
val v = DenseVector(2f, 0f, 3f, 2f, -1f)
v.update(3, 6f)
println(v)

This gives us the following result: DenseVector (2.0, 0.0, 3.0, 6.0, -1.0)

SparseVectoris a vector with most of its values at zero, and supports numeric operations. Let's look at the sparse vector computation; we will a create sparse vector object using Breeze, and then update the values by one.

import breeze.linalg.SparseVectorval sv:SparseVector[Double] = 
SparseVector(5)()
sv(0) = 1
sv(2) = 3
sv(4) = 5
val m:SparseVector[Double] = sv.mapActivePairs((i,x) => x+1)
println(m)

This gives us the following result: SparseVector((0,2.0), (2,4.0), (4,6.0))