重塑稀疏矩阵

时间:2019-03-29 21:33:04

标签: python pandas numpy scipy sparse-matrix

我有一个稀疏矩阵(scipy.sparse.csr.csr_matrix),我想将其形状从(4137,3000)调整为(4137,3000,1),我发现scipy具有scipy.sparse.csr_matrix.reshape但例如,当我表演时:

x = x.reshape((x.shape[0], x.shape[1], 1))

我得到相同的形状!不是3D

我做错了什么?

1 个答案:

答案 0 :(得分:0)

Scipy无法为您做到这一点,但是numpy可以!

例如:

>>> from numpy import zeros, newaxis
>>> a = zeros((6, 8))
>>> a.shape
(6, 8)
>>> b = a[:, :, newaxis]
>>> b.shape
(6, 8, 1)

只需提供您的数组并使用newaxis

发件人:How to make a 2d numpy array a 3d array?