pyspark稠密向量(DenseVector)和稀疏向量(SparseVector)

pyspark稠密向量和稀疏向量

pyspark的本地向量有两种:

DenseVctor :稠密向量 其创建方式 Vector.dense(数据)

SparseVector :稀疏向量 其创建方式有两种:

  方法一:Vector.sparse(向量长度,索引数组,与索引数组所对应的数值数组)

  方法二:Vector.sparse(向量长度,(索引,数值),(索引,数值),(索引,数值),...(索引,数值))

示例:

比如向量(1,0,3,4)的创建有三种方法:

稠密向量:直接Vectors.dense(1,0,3,4)

稀疏向量:

方法一:Vector.sparse(4,(0,2,3),(1,3,4))

    表示该向量的第0个,第2个,第3个位置,(1,3,4) 表示(0,2,3)位置对应的数值分别为1,3,4

方法二:Vector.sparse(4,(0,1),(2,3),(3,4))

    (0,1)就是(索引,数值)的形式。位置0的数值为1, 位置2的数值为3,位置3的数值为4。

有酒有风
有酒有风
经验分享 程序员 微信小程序 职场和发展