У меня есть разреженная матрица, которую я пытаюсь изменить:
_train_data = model.pipeline.transform(train_data)
print(type(_train_data), _train_data.shape)
>>> <class 'scipy.sparse.csr.csr_matrix'> (18864, 3742)
Сначала я преобразовываю ее в плотный массив с нюансами:
_train_data = _train_data.todense()
print(type(_train_data), _train_data.shape)
>>> <class 'numpy.matrix'> (18864, 3742)
Затем пытаюсь изменить ее с помощьюцель его формирования (18864, 3742, 1), чтобы я мог вписать в некоторые кера плотные слои, но изменение формы не работает:
a_new_df = _train_data.reshape((18864, 3742, -1))
print(type(a_new_df), a_new_df.shape)
>>> <class 'numpy.matrix'> (18864, 3742)
Я также пытался использовать np.reshape ():
a_new_df = np.reshape(_train_data, (18864, 3742, -1))
print(type(a_new_df), a_new_df.shape)
>>> <class 'numpy.matrix'> (18864, 3742)
и использование другой оси для изменения формы:
a_new_df = np.reshape(_train_data, (18864, 3742, 1))
print(type(a_new_df), a_new_df.shape)
>>> <class 'numpy.matrix'> (18864, 3742)
a_new_df = np.reshape(_train_data, (1, 18864, 3742))
print(type(a_new_df), a_new_df.shape)
>>> <class 'numpy.matrix'> (18864, 3742)
Но ни один из них не позволяет успешно изменить форму матрицы.