Как ускорить извлечение переменных с помощью python-netcdf4? - PullRequest
0 голосов
/ 11 марта 2019

Ниже приведен пример кода, который я запускаю. Вот пример типа данных, которые я пытаюсь загрузить. Получение параметра 'Mean_Layer_Height' занимает очень много времени.У меня есть отдельный пост, в котором рассматривается использование xarray для этого, что может быть быстрее, но мне было интересно, если нет способа оптимизировать python-netCDf4 для более эффективного извлечения данных.У меня 383 файла для загрузки, что может занять до 3 часов.Это не было бы так плохо, за исключением того, что я все еще пишу и отлаживаю код после этого.Есть ли способ быстрее импортировать эти данные?

filepath = #need to put an example file in here, see above
#keep track of when code was started
runstart=pd.datetime.now()

rootgrp3 = Dataset(filepath, "r", format="NETCDF4")
#print (rootgrp3.data_model)
print(pd.datetime.now()-runstart)

#this step dats 10-19 seconds, when others only take 0.04 seconds
mlh_2 = rootgrp3.variables['Mean_Layer_Height'][:]
print(pd.datetime.now()-runstart)

#also need this but it doesn't take long (like 0.01 seconds)
ml_time = rootgrp3.variables['time'][:]
print(pd.datetime.now()-runstart)
...