2016-10-03 173 views
0

我有一個scipy.sparse.csc.csc_matrix。我想在這個矩陣的每個元素上使用一個冪函數,使得每個元素都被提升到權力本身。我應該怎麼做?Scipy稀疏矩陣到電源備用矩陣

我嘗試這樣做:

B.data ** B.data 

但是,這從數據

回答

1

我有這種方法沒有問題,刪除0:

In [155]: B=sparse.random(10,10,.1,'csc') 
In [156]: B 
Out[156]: 
<10x10 sparse matrix of type '<class 'numpy.float64'>' 
    with 10 stored elements in Compressed Sparse Column format> 
In [157]: B.data 
Out[157]: 
array([ 0.79437782, 0.74414493, 0.3922551 , 0.61980213, 0.45231045, 
     0.94498933, 0.53086532, 0.54611246, 0.52941419, 0.81069106]) 
In [158]: B.data=B.data**B.data 
In [159]: B.data 
Out[159]: 
array([ 0.83288253, 0.80259158, 0.69274789, 0.74342645, 0.69847422, 
     0.94793528, 0.71450246, 0.71866496, 0.71412372, 0.84354814]) 
In [160]: B 
Out[160]: 
<10x10 sparse matrix of type '<class 'numpy.float64'>' 
    with 10 stored elements in Compressed Sparse Column format>