IndexedRowMatrix

pyspark.mllib.linalg.distributed。 IndexedRowMatrix ( :pyspark.rdd.RDD(聯盟(元組(int,VectorLike],pyspark.mllib.linalg.distributed.IndexedRow]],numRows:int=0,numCols:int=0 )

代表一個row-oriented分布式索引行的矩陣。

參數
pyspark.RDD

抽樣IndexedRows或(int,矢量)組成的元組或DataFrame int類型列指數和一個向量類型的列。

numRows int,可選

矩陣的行數。非容積值是未知的,此時的行數將由馬克斯行索引+ 1。

numCols int,可選

矩陣的列數。非容積值是未知的,此時列的數量將取決於大小的第一行。

方法

columnSimilarities()

計算所有餘弦相似性列。

computeGramianMatrix()

格蘭姆矩陣計算一個T ^

computeSVD(k [、computeU rCond])

IndexedRowMatrix計算奇異值分解。

(矩陣)

這個矩陣乘以一個本地稠密矩陣在右邊。

numCols()

獲取或計算的關口。

numRows()

獲取或計算的行數。

toBlockMatrix([rowsPerBlock colsPerBlock])

這個矩陣轉換為一個BlockMatrix。

toCoordinateMatrix()

這個矩陣轉換為一個CoordinateMatrix。

toRowMatrix()

這個矩陣轉換為一個RowMatrix。

屬性

行IndexedRows IndexedRowMatrix存儲為一個抽樣。

方法的文檔

columnSimilarities ( )pyspark.mllib.linalg.distributed.CoordinateMatrix

計算所有餘弦相似性列。

例子

> > >=sc並行化([IndexedRow(0,(1,2,3]),IndexedRow(6,(4,5,6))))> > >=IndexedRowMatrix()> > >cs=columnSimilarities()> > >打印(csnumCols())3
computeGramianMatrix ( )pyspark.mllib.linalg.Matrix

格蘭姆矩陣計算一個T ^

筆記

這不能計算矩陣有超過65535列。

例子

> > >=sc並行化([IndexedRow(0,(1,2,3]),IndexedRow(1,(4,5,6))))> > >=IndexedRowMatrix()
> > >computeGramianMatrix()DenseMatrix (3 3 (17.0, 22.0, 27.0, 22.0, 29.0, 36.0, 27.0, 36.0, 45.0), 0)
computeSVD ( k:int,computeU:bool=,rCond:浮動=1 e-09 )pyspark.mllib.linalg.distributed.SingularValueDecomposition ( pyspark.mllib.linalg.distributed.IndexedRowMatrix , pyspark.mllib.linalg.Matrix ]

IndexedRowMatrix計算奇異值分解。

給定行矩陣的維度(m X n)分解成U * * V的地方

  • U: (m X k)(左奇異向量)是一個IndexedRowMatrix

    的列是特征向量(X ')

  • s: DenseVector組成的特征值的平方根

    (奇異值)在降序排列。

  • v: X k (n)(右奇異向量)矩陣的列

    的特征向量(X)

更具體的實現細節,請參閱scala文檔。

參數
k int

保持領先的奇異值的數量(0 < k < = n)。它可能會返回小於k如果有數值零奇異值或沒有足夠的麗茲值聚合前Arnoldi更新迭代的最大數量達到(以防矩陣A是壞脾氣的)。

computeU bool,可選

是否要計算,如果設置為真,那麼計算U * V * s ^ 1

rCond 浮動,可選

互惠的條件數。所有奇異值小於rCond *[0]被視為零,年代[0]是最大的奇異值。

返回
SingularValueDecomposition

例子

> > >=((0,(3,1,1)),(1,(- - - - - -1,3,1)))> > >irm=IndexedRowMatrix(sc並行化())> > >svd_model=irmcomputeSVD(2,真正的)> > >svd_modelU收集()[IndexedRow (0, [-0.707106781187, 0.707106781187]), IndexedRow (1 [-0.707106781187, -0.707106781187])]> > >svd_model年代DenseVector ([3.4641, 3.1623])> > >svd_modelVDenseMatrix (3 2 (-0.4082, -0.8165, -0.4082, 0.8944, -0.4472, 0.0…), 0)
( 矩陣:pyspark.mllib.linalg.Matrix )pyspark.mllib.linalg.distributed.IndexedRowMatrix

這個矩陣乘以一個本地稠密矩陣在右邊。

參數
矩陣 pyspark.mllib.linalg.Matrix

當地一個稠密矩陣的行數必須匹配這個矩陣的列數

返回
IndexedRowMatrix

例子

> > >=IndexedRowMatrix(sc並行化(((0,(0,1)),(1,(2,3)))))> > >(DenseMatrix(2,2,(0,2,1,3)))收集()[IndexedRow (0, [2.0, 3.0]), IndexedRow (1 [6.0, 11.0])]
numCols ( )→int

獲取或計算的關口。

例子

> > >=sc並行化([IndexedRow(0,(1,2,3]),IndexedRow(1,(4,5,6]),IndexedRow(2,(7,8,9]),IndexedRow(3,(10,11,12))))
> > >=IndexedRowMatrix()> > >打印(numCols())3
> > >=IndexedRowMatrix(,7,6)> > >打印(numCols())6
numRows ( )→int

獲取或計算的行數。

例子

> > >=sc並行化([IndexedRow(0,(1,2,3]),IndexedRow(1,(4,5,6]),IndexedRow(2,(7,8,9]),IndexedRow(3,(10,11,12))))
> > >=IndexedRowMatrix()> > >打印(numRows())4
> > >=IndexedRowMatrix(,7,6)> > >打印(numRows())7
toBlockMatrix ( rowsPerBlock:int=1024年,colsPerBlock:int=1024年 )pyspark.mllib.linalg.distributed.BlockMatrix

這個矩陣轉換為一個BlockMatrix。

參數
rowsPerBlock int,可選

組成每一塊的行數。塊形成最後一行不需要給定的行數。

colsPerBlock int,可選

列數,每一塊。塊形成最後一列不需要給定的列數。

例子

> > >=sc並行化([IndexedRow(0,(1,2,3]),IndexedRow(6,(4,5,6))))> > >=IndexedRowMatrix()toBlockMatrix()
> > >#這IndexedRowMatrix 7有效行,由於> > >6 #最高的行索引,以及隨之而來的> > ># BlockMatrix也會有7行。> > >打印(numRows())7
> > >打印(numCols())3
toCoordinateMatrix ( )pyspark.mllib.linalg.distributed.CoordinateMatrix

這個矩陣轉換為一個CoordinateMatrix。

例子

> > >=sc並行化([IndexedRow(0,(1,0]),IndexedRow(6,(0,5))))> > >=IndexedRowMatrix()toCoordinateMatrix()> > >條目(3)[MatrixEntry (0, 0, 1.0), MatrixEntry (0、1、0.0), MatrixEntry (0.0 6 0))
toRowMatrix ( )pyspark.mllib.linalg.distributed.RowMatrix

這個矩陣轉換為一個RowMatrix。

例子

> > >=sc並行化([IndexedRow(0,(1,2,3]),IndexedRow(6,(4,5,6))))> > >=IndexedRowMatrix()toRowMatrix()> > >收集()[DenseVector ((1.0, 2.0, 3.0)), DenseVector ((4.0, 5.0, 6.0)))

屬性的文檔

行IndexedRows IndexedRowMatrix存儲為一個抽樣。

例子

> > >=IndexedRowMatrix(sc並行化([IndexedRow(0,(1,2,3]),IndexedRow(1,(4,5,6)))))> > >=> > >第一個()IndexedRow (0, (1.0, 2.0, 3.0))