Python: как сохранить разреженную матрицу с помощью Python?

Я получил результат с использованием разреженной матрицы в Python, мне нужно сохранить эту разреженную матрицу на моем жестком диске, как я могу это сделать? если я должен создать базу данных, то как мне это сделать? это мой код:

import nltk
import cPickle
import numpy
from scipy.sparse import lil_matrix
from nltk.corpus import wordnet as wn
from nltk.corpus import brown
f = open('spmatrix.pkl','wb')
def markov(L):
    count=0
    c=len(text1)
    for i in range(0,c-2):
        h=L.index(text1[i])
        k=L.index(text1[i+1])
        mat[h,k]=mat[h,k]+1//matrix
    cPickle.dump(mat,f,-1)



text = [w for g in brown.categories() for w in brown.words(categories=g)]
text1=text[1:500]
arr=set(text1)
arr=list(arr)
mat=lil_matrix((len(arr),len(arr)))
markov(arr)
f.close()

Мне нужно сохранить этот «мат» в файле, и я должен получить доступ к значению матрицы, используя координаты.

результат разреженной матрицы выглядит следующим образом: `результат разреженная матрица выглядит так:

(173, 168) 2.0 (173, 169) 1.0 (173, 172) 1.0 (173, 237) 4.0 (174, 231) 1.0 (175, 141) 1.0 (176, 195) 1.0 

но когда я сохраняю ее в файл и читаю то же самое, я получаю это примерно так:

(0, 68) 1.0 (0, 77) 1.0 (0, 95) 1.0 (0, 100)    1.0 (0, 103)    1.0 (0, 110) 1.0 (0, 112)   2.0 (0, 132)    1.0 (0, 133)    2.0 (0, 139)    1.0 (0, 146)    2.0 (0, 156)    1.0 (0, 157)    1.0 (0, 185)    1.0
8
задан Bhuvan raj 2 March 2011 в 20:37
поделиться