Actualmente estoy trabajando en un add-on que se basa en el usuario la elección de los campos de las tablas (que puede ser de shapefiles, csv o dbf) que se abren en QGIS y, a continuación, hacer los cálculos con dichos datos.
Ahora mismo estoy en bucle a través de todas las características y la recogida de los datos utilizando el estándar de libro de cocina técnicas de bucle a través de las características y atributos de lectura, pero se está tomando demasiado tiempo. Algunas tablas tienen alrededor de 25.000.000 de características, y los datos reales de carga tarda mucho más que el de computación. Hay algún atajo? Puedo cargar conjunto de vectores a la vez o alguna otra cosa similar?
Se me ocurre que puedo conseguir el archivo de la información y de ir directamente a la base de datos en disco y se carga a partir de ahí, pero lo que REALMENTE quiero evitar.
Parece que la pregunta no era muy claro, así que aquí va lo que tengo ahora.
all_matrix=[]
for f in matrix.getFeatures():
a=feat.attributes()[origin]
b=feat.attributes()[destination]
c=feat.attributes()[flow]
all_matrix.append([a,b,c])
matrix=np.array(all_matrix)