3
我知道如何执行joblib
中的并行循环,该循环返回一个列表作为结果。使用索引列表有效填充NumPy数组
但是,是否可以并行填充预定义的numpy
矩阵?
想象一下下面的小例子,矩阵和数据:
column_data = ['a', 'b', 'c', 'd', 'e', 'f', 'x']
data = [['a', 'b', 'c'],
['d', 'c'],
['e', 'f', 'd', 'x']]
x = np.zeros((len(data), len(column_data))
注意column_data
排序和独特的。 data
是列表的列表,而不是矩形矩阵。
循环:
for row in range(len(data)):
for column in data[row]:
x[row][column_data.index(column)] = 1
有可能parallellise这个循环?填充70,000 x 10,000
矩阵非常缓慢而没有并行化。
我很抱歉造成这种ambiguation。我改进了我的问题。数据不是方阵,而是列表。 'column_data'是排序和唯一的。 – Tim
@Tim请检查编辑好的代码。 – Divakar
我终于明白了你的旧代码,看到你编辑它只有4行:)。让我看看我能否弄清楚这是干什么的。令人敬畏的技术顺便说一句,这是疯狂的快。 – Tim