擅长:python、mysql、java
<p><strong>注意</strong>:此答案是对现在提供代码的修订问题的响应。</p>
<p>不应在函数中调用<code>cPickle.dump()</code>。创建稀疏矩阵,然后将其内容转储到文件中。</p>
<p>尝试:</p>
<pre><code>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
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 = open('spmatrix.pkl','wb')
cPickle.dump(mat,f,-1)
f.close()
</code></pre>