import shapefile
data = shapefile.Reader("data_file.shp")
shapes = data.shapes()
Mein Problem ist, dass die Formen aus den Shape-Datei Lesern immer gibt mir eine Ausnahme MemoryError
wenn Pyshp verwendet. Die .shp
Datei ist ziemlich groß, bei 1,2 gB. Aber ich benutze nur 3% der 32gB meiner Maschine, also verstehe ich es nicht.Speicherfehler auf großer Shape-Datei in Python
Gibt es einen anderen Ansatz, den ich nehmen kann? Kann die Datei in Python in Blöcken verarbeitet werden? Oder verwenden Sie ein Werkzeug, um die Datei in Ritzen zu verschütten, und bearbeiten Sie sie dann einzeln?
Ich kann feststellen, dass das Problem nicht mit der Erstellung des Objekts, sondern mit der Methode 'shapes()' zusammenhing. Das Problem war jedoch, dass ich 32-Bit-Python verwendete, das nur 32 GB RAM adressieren kann. Als ich die 64-Bot-Version installierte, ging das Problem weg. Wenn die 'iterShapes()' Methode nur eine einzelne Form gleichzeitig in den Speicher lädt, werde ich das natürlich verwenden – Mawg