def test_monthly_mean_ts_monthly(): time = pd.date_range('2000-01-01', freq='1M', periods=120) arr = xr.DataArray(np.random.random(time.shape), dims=[TIME_STR], coords={TIME_STR: time}) actual = monthly_mean_ts(arr) assert arr.identical(actual)
def test_monthly_mean_ts_submonthly(): time = pd.date_range('2000-01-01', freq='1D', periods=365 * 3) arr = xr.DataArray(np.random.random(time.shape), dims=[TIME_STR], coords={TIME_STR: time}) desired = arr.resample(**{TIME_STR: '1M'}).mean(TIME_STR) actual = monthly_mean_ts(arr) assert desired.identical(actual)
def test_monthly_mean_ts_single_month(): time = pd.date_range('2000-01-01', freq='6H', periods=4 * 31) arr = xr.DataArray(np.random.random(time.shape), dims=[TIME_STR], coords={TIME_STR: time}) desired = arr.mean(TIME_STR) actual = monthly_mean_ts(arr) np.testing.assert_allclose(actual, desired)
def test_monthly_mean_ts_submonthly(): time = pd.date_range('2000-01-01', freq='1D', periods=365 * 3) arr = xr.DataArray(np.random.random(time.shape), dims=[TIME_STR], coords={TIME_STR: time}) desired = arr.resample('1M', TIME_STR, how='mean') actual = monthly_mean_ts(arr) assert desired.identical(actual)
def test_monthly_mean_ts_na(): time = pd.to_datetime(['2000-06-01', '2001-06-01']) arr = xr.DataArray(np.random.random(time.shape), dims=[TIME_STR], coords={TIME_STR: time}) arr = arr.resample(**{TIME_STR: '1M'}).mean(TIME_STR) actual = monthly_mean_ts(arr) desired = arr.dropna(TIME_STR) assert desired.identical(actual)