何十億ものバウンディングボックス(ファイルから順番に読み込まれる)で構成されるセットが与えられ、各セルのラスター値が重複するバウンディングボックスの数を与える必要がある場合、ラスターを効率的に(Pythonで)計算するにはどうすればよいですか?
4000 * 4000ラスターの場合
私はnumpy行列の作成に時間をかけました:
$ python -m timeit 'import numpy' 'a = numpy.zeros(shape=(4000,4000))'
10 loops, best of 3: 51.7 msec per loop
標準のPython行列の作成:
$ python -m timeit 'a = 4000*[0]' 'for i in range(4000):' ' a[i]=4000*[0]'
10 loops, best of 3: 218 msec per loop
したがって、numpyはより高速ですが、ループあたり50ミリ秒、10億回の反復により、実行時間は約1年(0.05ミリ秒* 1000000000/60/60/24/365 = 1.5年)になります。
したがって、各ポリゴンをサンプリングすることはできません。この問題の典型的なアプローチは何ですか?