コード例 #1
0
def test_check_aggregate_pass(meta_df):
    # make data complete so that aggregtion-test passes
    df = pd.DataFrame({'model': 'a_model', 'scenario': 'a_scenario',
                       'region': 'World', 'variable': 'Primary Energy|Gas',
                       'unit': 'EJ/y', 'year': [2005, 2010], 'value': [.5, 3]})
    meta_df.data = meta_df.data.append(df, ignore_index=True)
    obs = meta_df.filter(scenario='a_scenario').check_aggregate('Primary Energy')
    assert obs is None
コード例 #2
0
ファイル: test_core.py プロジェクト: jiedingfei/pyam
def test_filter_by_metadata_int(meta_df):
    meta_df.metadata([1, 2], name='value')
    obs = meta_df.filter(value=[1, 3])
    assert obs['scenario'].unique() == 'a_scenario'
コード例 #3
0
ファイル: test_core.py プロジェクト: jiedingfei/pyam
def test_filter_by_metadata_bool(meta_df):
    meta_df.metadata([True, False], name='exclude')
    obs = meta_df.filter(exclude=True)
    assert obs['scenario'].unique() == 'a_scenario'
コード例 #4
0
ファイル: test_core.py プロジェクト: jiedingfei/pyam
def test_filter_by_metadata_str(meta_df):
    meta_df.metadata(['testing', 'testing2'], name='category')
    obs = meta_df.filter(category='testing')
    assert obs['scenario'].unique() == 'a_scenario'
コード例 #5
0
ファイル: test_core.py プロジェクト: jiedingfei/pyam
def test_filter_keep_false(meta_df):
    df = meta_df.filter(variable='Primary Energy|Coal', year=2005, keep=False)
    obs = df.data[df.data.scenario == 'a_scenario'].value
    npt.assert_array_equal(obs, [1, 6, 3])
コード例 #6
0
ファイル: test_core.py プロジェクト: jiedingfei/pyam
def test_filter_as_kwarg(meta_df):
    obs = list(meta_df.filter(variable='Primary Energy|Coal').scenarios())
    assert obs == ['a_scenario']
コード例 #7
0
def test_set_meta_as_str_list(meta_df):
    meta_df.set_meta(['testing', 'testing2'], name='category')
    obs = meta_df.filter(category='testing')
    assert obs['scenario'].unique() == 'a_scenario'
コード例 #8
0
def test_filter_meta_index(meta_df):
    obs = meta_df.filter(scenario='a_scenario2').meta.index
    exp = pd.MultiIndex(levels=[['a_model'], ['a_scenario2']],
                        labels=[[0], [0]],
                        names=['model', 'scenario'])
    pd.testing.assert_index_equal(obs, exp)