Как я могу пересчитать набор данных xarray с переходом на летнее время? - PullRequest
0 голосов
/ 22 апреля 2020

У меня есть ежедневный набор данных, который мне нужно пересчитать до почасового набора данных, однако я хочу принять во внимание переход на летнее время, т.е. в некоторых днях должно быть 25 часов, а в некоторых днях 23. В этом случае летнее время для Перу. У кого-нибудь есть идеи как это сделать? Я понимаю, как выполнить базовую c повторную выборку, как показано ниже:

import numpy as np
import pandas as pd
import xarray as xr

dso_test=xr.Dataset()
dso_test.coords['Time'] = (('Time'), pd.date_range('2004-01-01','2004-12-31'))
dso_test.coords['lat'] = (('south_north', 'west_east'), np.random.rand(93, 87)*100)
dso_test.coords['lon'] = (('south_north', 'west_east'), np.random.rand(93, 87)*100)
dso_test['rain']=(('Time','south_north','west_east'), np.random.rand(366,93, 87))

dso_test.resample(Time='1H').pad()

Но это просто дает 24 часа на каждый день.

На самом деле я хочу использовать ежедневный набор данных для фильтрации другого трехмерного почасового набора данных (который включает летнее время), т. Е. Где ежедневный набор данных равен 0, все почасовые данные за этот день (в этом месте) должно быть 0, с другими значениями без изменений. Простейшим способом, по-видимому, является повторная выборка ежедневного набора данных и использование его в качестве фильтра, но может быть и другой способ (это большой набор данных, поэтому циклический просмотр каждого часа не идеален, хотя я не могу понять, как это сделать что либо).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...