2017-02-14 111 views
0

我已經在cvxpy中定義了一個優化問題,但是想在後來的代碼中用numpy處理結果 - 我如何將它從cvxpy轉換成numpy?如何將CVXPY結果轉換爲numpy

它的類型

<class 'numpy.matrixlib.defmatrix.matrix'> 

的。如果我想繪製它看到的結果,matplotlib只顯示一個藍色區域。

回答

0

https://docs.scipy.org/doc/numpy/reference/generated/numpy.matrix.view.html似乎有所有你需要

numpy的的view都可以使用(據我所知)中可以使用numpy的直接的array任何哪種方式。

這是有道理的「轉換」爲numpy的數組,如果你想獲得的數據的一個副本

y 
matrix([[1, 0, 0, 0, 2, 0, 0, 0], 
     [3, 0, 0, 0, 4, 0, 0, 0]], dtype=int16) 

type(y) 
numpy.matrixlib.defmatrix.matrix  


n = numpy.array(y) 
n[1,2] = 999 

n 
array([[ 1, 0, 0, 0, 2, 0, 0, 0], 
     [ 3, 0, 999, 0, 4, 0, 0, 0]], dtype=int16) 

y 
matrix([[1, 0, 0, 0, 2, 0, 0, 0], 
     [3, 0, 0, 0, 4, 0, 0, 0]], dtype=int16)