2
У меня возникли проблемы изменения размера матрицы - функция set_shape
кажется, не имеет никакого эффекта:питона (SciPy): Изменение размера разреженной матрицы
>>> M
<14x3562 sparse matrix of type '<type 'numpy.float32'>'
with 6136 stored elements in LInked List format>
>>> new_shape = (15,3562)
>>> M.set_shape(new_shape)
>>> M
<14x3562 sparse matrix of type '<type 'numpy.float32'>'
with 6136 stored elements in LInked List format>
Кто-нибудь еще встретить это?
Я также попытался сделать это вручную, т.е.
>>> M._shape = new_shape
>>> M.data = np.concatenate(M.data, np.empty((0,0), dtype=np.float32))
но бросает ошибку:
*** TypeError: only length-1 arrays can be converted to Python scalars
или
>>> M.data = np.concatenate(M.data, [])
*** TypeError: an integer is required
Для информации:
- Python 2.6.5 (R265: 79063, 16 апреля 2010, 13:57:41)
- SciPy 0.11.0.dev-03f9e4a
Жутко, что дает мне ошибку: 'строка = sparse.lil_matrix ((1,3562))' 'последующим sparse.vstack (М, строка)' 'дает *** NotImplementedError: добавление скаляр в CSC или CSR-матрицу не поддерживается – tdc
, и перед тем, как вы спросите M, определенно матрица lil! – tdc
@tdc: это 'sparse.vstack ([M, row])'. –