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)
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))
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))