Mira, aqui te muestro un frangmento de codigo, este tipo de algoritmo es el que estoy utilizando para sacar datos de la tabla, es el mismo todo el timepo, pero cambiando los parametros dependiendo del caso.
Entonces las primeras veces, al principio del script funciona, pero hacia el final del script es cuando muestra el Memory Error.
Código Python:
Ver originaldef findGoodPages(pathToTable, pages, rows, columns, possibleValues):
with openFile(pathToTable, 'r') as f:
tab = f.getNode("/previous")
#Lo que necesito hacer es recorrer toda la pytable y seleccionar ciertos campos
#pero unicamente de las rows que cumplan ciertas condiciones
#primero convierto las listas a diccionarios, esto aumenta la eficiencia en las busquedas
dpages = dict((i, None) for i in pages
drows = dict((i, None) for i in rows
dcolumns = dict((i, None) for i in columns
dpossibleValues = dict((i, None) for i in possibleValues
#aqui guardare lo que necesito
result = []
t1 = time.time()
#dpossibleValues guarda 800 posibles valores de un total de mas de 1000
for i in dpossibleValues:
aux = [row['is_ok'] for row in tab.where("(value == i)") if row['page'] in dpages and row['page_row'] in drows and row['page_col'] in dcolumns]
result.append([i,format(np.array(aux).mean(), '.2f'), format(np.array(aux).std(), '.2f')])
#en cada paso del loop borro
del aux
return result