我想创建一个具有沿对角线向下运行的2D模式的稀疏矩阵。这可能是最简单的例子。如何在SciPy中创建对角线稀疏矩阵
说我的模式是:[1,0,2,0,1] ...
我想创建一个稀疏矩阵:
[[2,0,1,0,0,0,0...0],
[0,2,0,1,0,0,0...0],
[1,0,2,0,1,0,0...0],
[0,1,0,2,0,1,0...0],
[0,0,1,0,2,0,1...0],
[...]]
的scipy.sparse.dia_matrix好像一个好的候选人,但是,我根本无法弄清楚如何从可用的文档中完成我想要的内容。谢谢你在前进
代替'np.zeros(N)+ 1'的,它可能是更清楚地做'np.ones(N)'。 :) – Dougal 2012-04-24 17:41:59
:)它是np.zeros(N)+1的原因,因为作者可能会希望在那里有其他值(比如说100),然后代码仍然是相同的np.zeros (N)+100。但显然这是风格问题。 – 2012-04-24 17:57:17
事实上,我确实需要一个和两个以外的值。谢谢!这个解决方案有多明显是很痛苦的,我只是不理解dia_matrix构造函数。 – user1354372 2012-04-25 15:07:50