проблема
Я пытаюсь обрезать очень большую блочную модель (файл 5,8 ГБ CSV), содержащий координаты Centroid X, Y и Z с Высота Растро. Я пытаюсь получить только блоки, лежащие чуть выше растрового слоя. Значения в точки модели блока. Для больших наборов данных это занимает необычное количество времени (да, это технический термин) в ArcGIS. Как я хочу его решить < Br /> Я хочу ускорить это, импортируя CSV в Python. Используя Dask, это быстро и просто: < /p>
import dask
from dask import dataframe as dd
BM = dd.read_csv(BM_path, skiprows=2,names=["X","Y","Z","Lith"])
< /code>
Но создание GeoDataFrame с использованием геопанд не является быстрым процессом. Я думал, что ускорение его с помощью следующего многопроцессорного кода может работать: < /p>
import multiprocessing as mp
from multiprocessing import pool
import geopandas as gpd
pool=mp.Pool(mp.cpu_count())
geometry = pool.apply(gpd.points_from_xy, args=(BM.X,BM.Y,BM.Z))
pool.close()
< /code>
Тем не менее, я на час ожидания, пока это не будет обработать без конца. сразу в следующем коде, но поймите, что есть некоторые синтаксические ошибки, которые я не знаю, как исправить, особенно с прохождением "Geometry =" to args =: < /p>
pool = mp.Pool(mp.cpu_count())
results = pool.apply(gpd.GeoDataFrame, args=(BM,geometry=(BM.X,BM.Y,BM.Z)))
pool.close()
мне было интересно, есть ли у кого -то лучшее представление о том, как я могу ускорить это и сделать этот процесс более эффективным, независимо от того, могу ли я параллелизировать.
[b] проблема [/b] Я пытаюсь обрезать очень большую блочную модель (файл 5,8 ГБ CSV), содержащий координаты Centroid X, Y и Z с Высота Растро. Я пытаюсь получить только блоки, лежащие чуть выше растрового слоя. Значения в точки модели блока. Для больших наборов данных это занимает необычное количество времени (да, это технический термин) в ArcGIS. [b] Как я хочу его решить [/b] < Br /> Я хочу ускорить это, импортируя CSV в Python. Используя Dask, это быстро и просто: < /p> [code]import dask from dask import dataframe as dd
BM = dd.read_csv(BM_path, skiprows=2,names=["X","Y","Z","Lith"]) < /code> Но создание GeoDataFrame с использованием геопанд не является быстрым процессом. Я думал, что ускорение его с помощью следующего многопроцессорного кода может работать: < /p> import multiprocessing as mp from multiprocessing import pool import geopandas as gpd
pool=mp.Pool(mp.cpu_count()) geometry = pool.apply(gpd.points_from_xy, args=(BM.X,BM.Y,BM.Z)) pool.close() < /code> Тем не менее, я на час ожидания, пока это не будет обработать без конца. сразу в следующем коде, но поймите, что есть некоторые синтаксические ошибки, которые я не знаю, как исправить, особенно с прохождением "Geometry =" to args =: < /p> pool = mp.Pool(mp.cpu_count()) results = pool.apply(gpd.GeoDataFrame, args=(BM,geometry=(BM.X,BM.Y,BM.Z))) pool.close() [/code] мне было интересно, есть ли у кого -то лучшее представление о том, как я могу ускорить это и сделать этот процесс более эффективным, независимо от того, могу ли я параллелизировать.
У меня есть события GeoDataFrame, содержащие только геометрию Point, и другие улицы GeoDataFrame, содержащие всю геометрию LineString. Я пытаюсь привязать все точки событий к ближайшей записи улицы. Я не нашел примера использования двух...
Я использую xarray для объединения нескольких файлов netcdf с помощью xarray.open_mfdataset. Однако при попытке запустить код я получаю следующую ошибку:
---------------------------------------------------------------------------
ValueError...
Моя общая цель — прочитать несколько CSV-файлов, выполнить некоторые вычисления, сохранить их как базу данных паркета, используя опцию раздела_on в функции to_parquet.
Я не могу переиндексировать и перераспределить перед сохранением из-за...
Моя общая цель — прочитать несколько CSV-файлов, выполнить некоторые вычисления, сохранить их как базу данных паркета, используя опцию partition_on в функции to_parquet.
Я не могу переиндексировать и перераспределить перед сохранением из-за...
Я пытаюсь изучить dask и создал следующий игрушечный пример конвейера с задержкой.
+-----+ +-----+ +-----+
| baz +--+ bar +--+ foo |
+-----+ +-----+ +-----+
Итак, baz зависит от bar, который, в свою очередь, зависит от foo
I хотелось бы, чтобы...