I am running a number of threads and collecting there result on a queue. I would like to dump it into array or list so that I can do indexing and retrieve those results. Each of the elements in the queue is a array of dimension n. I would like to access those arrays. Would you please let me know, how would i do it?
def dump_queue(model_queue):
queue_list = []
for i in iter(model_queue.get,'STOP'):
queue_list.append(i)
return queue_list
aux_model=train_svm(np.array(trainExample),np.array(trainLabel))
model_queue.put(aux_model.coef_)
Thus the arrays are the learned model parameters of svm
. model_queue is shared among the threads. I want to access each of the model parameters vectors not each of the entries of a model parameters.
You're done with the parallel part and just want to get the results in a list, is that it? Then try:
list(my_queue.queue)
Example:
from queue import Queue
q = Queue()
for i in range(5):
q.put(i)
l = list(q.queue)
print(l)
Output:
[0, 1, 2, 3, 4]