Example #1
0
def test_combine():
    columns = [1, 2]
    index = ['a', 'b']

    def make_data(multiplier):
        return pd.DataFrame(np.ones((2, 2)) * multiplier,
                            columns=columns,
                            index=index
        )
    r1 = {'m1': make_data(2),
          'm2': make_data(0)}
    r2 = {'m1': make_data(1),
          'm2': make_data(2)}
    r = combine([r1, r2])
    assert_equal(['m1', 'm2'], r.keys())
    
    assert_almost_equal(
        np.ones((2, 2)) * 1.5,
        r['m1'].as_matrix()
    )
    
    assert_almost_equal(
        np.ones((2, 2)) * 1.,
        r['m2'].as_matrix()
    )
Example #2
0
def test_combine_with_nan():
    columns = [1, 2]
    index = ['a', 'b']

    def make_data(multiplier):
        return pd.DataFrame(np.ones((2, 2)) * multiplier,
                            columns=columns,
                            index=index
        )
    d = make_data(2)
    d[2]['a'] = np.nan
    r1 = {'m1': d,
          'm2': make_data(0)}
    r2 = {'m1': make_data(1),
          'm2': make_data(2)}
    r = combine([r1, r2])
    assert_equal(['m1', 'm2'], r.keys())
    
    assert_almost_equal(
        np.asarray([[1.5, 1], [1.5, 1.5]]),
        # np.ones((2, 2)) * 1.5,
        r['m1'].as_matrix()
    )
    
    assert_almost_equal(
        np.ones((2, 2)) * 1.,
        r['m2'].as_matrix()
    )