我学习 Python 已经有一段时间了,但 Scipy 是我正在尝试的新东西。所以,我在实现这个时遇到了困难:
我有这个代码,
data_mat = sparse.lil_matrix((500, 11000))
for i_i in range(0, totalcols):
for j, data in enumerate(data_mat):
dw[i_i] = dw[i_i] + (data_mat[j, i_i] * (data_mat[j, totalcols] - prob[j]))
这里,
dw[totalcols] #is a list containing 11000 entries initialized to 0
这段代码的作用是,它逐列遍历 data_mat ,对于每一列,它逐行获取值并进行一些计算。
例子:
1,0,o,...........,1,0,0
0,1,1,...........,0,1,1
.......................
.......................
1,0,0,............0,0,0
稀疏矩阵:500 X 11000 个条目的 data_mat
我能够做到这一点,但是,我的程序花费的时间太长了,比如超过 10 分钟来进行计算。
有没有更好的方法来实现这个?