def test_bootstrap_uninit_pm_ensemble_from_control_cftime_all_freq(init, control): """Test bootstrap_uninit_pm_ensemble_from_control_cftime for all freq data.""" uninit = bootstrap_uninit_pm_ensemble_from_control_cftime(init, control) # lead and member identical for d in ['lead', 'member']: assert (uninit[d] == init[d]).all() # init same size assert uninit['init'].size == init['init'].size
def test_bootstrap_uninit_pm_ensemble_from_control_cftime_all_freq(init, control): """Test bootstrap_uninit_pm_ensemble_from_control_cftime for all freq data.""" init = init.isel(lead=range(3), init=range(5)) uninit = bootstrap_uninit_pm_ensemble_from_control_cftime(init, control) # lead and member identical for d in ["lead", "member"]: assert (uninit[d] == init[d]).all() # init same size assert uninit["init"].size == init["init"].size
def test_bootstrap_by_stacking_two_var_dataset(PM_ds_initialized_1d_ym_cftime, PM_ds_control_1d_ym_cftime): """Test _bootstrap_by_stacking when init_pm and control two variable dataset.""" PM_ds_initialized_1d_ym_cftime["sos"] = PM_ds_initialized_1d_ym_cftime[ "tos"] PM_ds_control_1d_ym_cftime["sos"] = PM_ds_control_1d_ym_cftime["tos"] res = _bootstrap_by_stacking(PM_ds_initialized_1d_ym_cftime, PM_ds_control_1d_ym_cftime) res_cf = bootstrap_uninit_pm_ensemble_from_control_cftime( PM_ds_initialized_1d_ym_cftime, PM_ds_control_1d_ym_cftime) assert len(list(res.data_vars)) == len(list(res_cf.data_vars)) # lead and member identical for d in ["lead", "member"]: assert (res[d] == res_cf[d]).all() # init same size assert res["init"].size == res_cf["init"].size
def test_bootstrap_uninit_pm_ensemble_from_control_cftime_annual_identical_da( PM_ds_initialized_1d_ym_cftime, PM_ds_control_1d_ym_cftime): """Test ``bootstrap_uninit_pm_ensemble_from_control_cftime`` cftime identical to ``bootstrap_uninit_pm_ensemble_from_control`` for annual data.""" PM_ds_initialized_1d_ym_cftime = PM_ds_initialized_1d_ym_cftime["tos"] PM_ds_control_1d_ym_cftime = PM_ds_control_1d_ym_cftime["tos"] cftime_res = bootstrap_uninit_pm_ensemble_from_control_cftime( PM_ds_initialized_1d_ym_cftime, PM_ds_control_1d_ym_cftime) noncftime_res = bootstrap_uninit_pm_ensemble_from_control( PM_ds_initialized_1d_ym_cftime, PM_ds_control_1d_ym_cftime) # lead and member identical for d in ["lead", "member"]: assert (cftime_res[d] == noncftime_res[d]).all() # init same size assert cftime_res["init"].size == noncftime_res["init"].size assert cftime_res.name == noncftime_res.name
def test_bootstrap_uninit_pm_ensemble_from_control_cftime_annual_identical( PM_ds_initialized_1d_ym_cftime, PM_ds_control_1d_ym_cftime ): """Test ``bootstrap_uninit_pm_ensemble_from_control_cftime`` cftime identical to ``bootstrap_uninit_pm_ensemble_from_control`` for annual data.""" cftime_res = bootstrap_uninit_pm_ensemble_from_control_cftime( PM_ds_initialized_1d_ym_cftime, PM_ds_control_1d_ym_cftime ) noncftime_res = bootstrap_uninit_pm_ensemble_from_control( PM_ds_initialized_1d_ym_cftime, PM_ds_control_1d_ym_cftime ) # lead and member identical for d in ['lead', 'member']: assert (cftime_res[d] == noncftime_res[d]).all() # init same size assert cftime_res['init'].size == noncftime_res['init'].size assert cftime_res.dims == noncftime_res.dims assert list(cftime_res.data_vars) == list(noncftime_res.data_vars)