Я пытаюсь преобразовать TF-IDF
разреженную матрицу в формат json.
Преобразование его в pandas datafram (toarray()
или todense()
) вызывает ошибку памяти.
Поэтому я хотел бы избежать этих подходов. Есть ли другой способ конвертировать его в JSON?
Ниже приведен мой подход к получению разреженной матрицы и мой предпочтительный результат JSON
Спасибо за помощь ...!
матрица TF-IDF
pip = Pipeline([('hash', HashingVectorizer(ngram_range=(1, 1), non_negative=True)), ('tfidf', TfidfTransformer())])
result_uni_gram = pip.fit_transform(df_news_noun['content_nouns'])
матрица возврата
result_uni_gram
<112537x1048576 sparse matrix of type '<class 'numpy.float64'>'
with 12605888 stored elements in Compressed Sparse Row format>
print(result_uni_gram)
(0, 1041232) 0.03397010691200069
(0, 1035546) 0.042603425242006505
(0, 1031141) 0.05579563771771019
(0, 1029045) 0.03985981185871279
(0, 1028867) 0.14591155976555212
(0, 1017328) 0.03827279930970525
: :
(112536, 9046) 0.04444360144902461
(112536, 4920) 0.07335227778871069
(112536, 4301) 0.06667794684006756
Ожидаемый результат
output_json = {
0: {1041232 : 0.03397, 1035546 : 0.04260, 1031141 : 0.055795 ... },
...
... 112536: {9046 : 0.04444, 4920 : 0.07335, 112536 : 0.06667}
}
Спасибо, что помогли мне ...!