Example #1
0
def test_refine_with_conditions(root, rows_csv, **unused):
    with loom.preql.get_server(root, debug=True) as preql:
        features = preql.feature_names
        conditions = make_fully_observed_row(rows_csv)
        preql.refine(
            target_feature_sets=None,
            query_feature_sets=None,
            conditioning_row=None)
        target_feature_sets = [
            [features[0], features[1]],
            [features[2]]]
        query_feature_sets = [
            [features[0], features[1]],
            [features[2]],
            [features[3]]]
        assert_raises(
            ValueError,
            preql.refine,
            target_feature_sets,
            query_feature_sets,
            conditions)
        conditions[0] = None
        assert_raises(
            ValueError,
            preql.refine,
            target_feature_sets,
            query_feature_sets,
            conditions)
        conditions[1] = None
        conditions[2] = None
        conditions[3] = None
        preql.refine(
            target_feature_sets,
            query_feature_sets,
            conditions)
Example #2
0
def test_refine_shape(root, encoding, **unused):
    with loom.preql.get_server(root, debug=True) as preql:
        features = preql.feature_names
        target_sets = [
            features[2 * i:2 * (i + 1)] for i in xrange(len(features) / 2)
        ]
        query_sets = [
            features[2 * i:2 * (i + 1)] for i in xrange(len(features) / 2)
        ]
        result = preql.refine(target_sets, query_sets, sample_count=10)
        reader = csv.reader(StringIO(result))
        header = reader.next()
        header.pop(0)
        assert_equal(header, map(min, query_sets))
        for row, target_set in izip(reader, target_sets):
            label = row.pop(0)
            assert_equal(label, min(target_set))
            assert_equal(len(row), len(query_sets))
Example #3
0
def test_refine_shape(root, encoding, **unused):
    with loom.preql.get_server(root, debug=True) as preql:
        features = preql.feature_names
        target_sets = [
            features[2 * i: 2 * (i + 1)]
            for i in xrange(len(features) / 2)
        ]
        query_sets = [
            features[2 * i: 2 * (i + 1)]
            for i in xrange(len(features) / 2)
        ]
        result = preql.refine(target_sets, query_sets, sample_count=10)
        reader = csv.reader(StringIO(result))
        header = reader.next()
        header.pop(0)
        assert_equal(header, map(min, query_sets))
        for row, target_set in izip(reader, target_sets):
            label = row.pop(0)
            assert_equal(label, min(target_set))
            assert_equal(len(row), len(query_sets))