Package quickml.data

Examples of quickml.data.AttributesMap


    @Test
    public void simpleTest() {
        Set<List<String>> attributesToCombine = Sets.newHashSet();
        attributesToCombine.add(Lists.newArrayList("k1", "k2"));
        AttributeCombiningEnricher attributeCombiningEnricher = new AttributeCombiningEnricher(attributesToCombine);
        AttributesMap attributes = AttributesMap.newHashMap();
        attributes.put("k1", "a");
        attributes.put("k2", "b");
        final AttributesMap enhancedAttributes = attributeCombiningEnricher.apply(attributes);
        Assert.assertEquals(enhancedAttributes.size(), 3);
        Assert.assertEquals(enhancedAttributes.get("k1-k2"), "ab");
    }
View Full Code Here


        return instances;
    }

    private Instance<AttributesMap> instanceConverter(String[] instanceArray) {

        AttributesMap attributesMap = AttributesMap.newHashMap();
        Serializable label = null;
        double weight = 1.0;
        for (int i = 0; i < header.size(); i++) {
            if (i >= instanceArray.length) {
                throw new IndexOutOfBoundsException();
            }

            if (instanceArray[i].isEmpty()) {
                continue;
            }

            boolean haveLabelInFirstCollumn = i == 0 && columnNameForLabel == null;
            boolean matchedCollumnToLabel = columnNameForLabel != null && columnNameForLabel.equals(header.get(i));
            if (haveLabelInFirstCollumn || matchedCollumnToLabel) {
                label = convertToNumberOrCleanedString(header.get(i), instanceArray[i]);
                continue;
            }

            boolean matchedCollumnToWeight = columnNameForWeight != null && columnNameForWeight.equals(header.get(i));
            if (matchedCollumnToWeight) {
                weight = (Double) convertToNumberOrCleanedString(header.get(i), instanceArray[i]);
                continue;
            }

            attributesMap.put(header.get(i), convertToNumberOrCleanedString(header.get(i), instanceArray[i]));
        }
        if (label == null) {
            label = "missing label";
            containsUnLabeledInstances = true;
        }
View Full Code Here

        this.attributesEnrichers = attributesEnrichers;
    }

    @Override
    public PredictionMap predict(AttributesMap attributes) {
        AttributesMap enrichedAttributes = enrichAttributes(attributes);
        return wrappedPredictiveModel.predict(enrichedAttributes);
    }
View Full Code Here

        AttributesMap enrichedAttributes = enrichAttributes(attributes);
        return wrappedPredictiveModel.predict(enrichedAttributes);
    }

    private AttributesMap enrichAttributes(final AttributesMap attributes) {
        AttributesMap enrichedAttributes = attributes;
        for (AttributesEnricher attributesEnricher : attributesEnrichers) {
            enrichedAttributes = attributesEnricher.apply(enrichedAttributes);
        }
        return enrichedAttributes;
    }
View Full Code Here

    }

    static class TestDateTimeExtractor implements DateTimeExtractor<AttributesMap> {
        @Override
        public DateTime extractDateTime(Instance<AttributesMap> instance) {
            AttributesMap attributes = instance.getAttributes();
            int year = ((Long) attributes.get("timeOfArrival-year")).intValue();
            int month = ((Long) attributes.get("timeOfArrival-monthOfYear")).intValue();
            int day = ((Long) attributes.get("timeOfArrival-dayOfMonth")).intValue();
            int hour = ((Long) attributes.get("timeOfArrival-hourOfDay")).intValue();
            int minute = ((Long) attributes.get("timeOfArrival-minuteOfHour")).intValue();
            return new DateTime(year, month, day, hour, minute, 0, 0);
        }
View Full Code Here

*/
public class TestDateTimeExtractor implements DateTimeExtractor<AttributesMap> {
    @Override
    public DateTime extractDateTime(Instance<AttributesMap> instance){

        AttributesMap attributes = instance.getAttributes();
        int currentTimeMillis = (Integer)attributes.get("currentTimeMillis");
        return new DateTime(currentTimeMillis);
    }
View Full Code Here

* Created by alexanderhawk on 5/6/14.
*/
public class MapDateTimeExtractor implements DateTimeExtractor<AttributesMap> {
    @Override
    public  DateTime extractDateTime(Instance<AttributesMap> instance){
        AttributesMap attributes = instance.getAttributes();
        int year = (Integer)attributes.get("timeOfArrival-year");
        int month = (Integer)attributes.get("timeOfArrival-monthOfYear");
        int day = (Integer)attributes.get("timeOfArrival-dayOfMonth");
        int hour = (Integer)attributes.get("timeOfArrival-hourOfDay");
        return new DateTime(year,month, day, hour, 0, 0, 0, DateTimeZone.UTC);
    }
View Full Code Here

        }
        return false;
    }

    private Instance<AttributesMap>cleanSupportingData(Instance<AttributesMap> instance) {
        AttributesMap attributes = AttributesMap.newHashMap();
        for (String key : instance.getAttributes().keySet()) {
            if (attributeWhiteList.isEmpty() || attributeWhiteList.contains(key)) {
                attributes.put(key, instance.getAttributes().get(key));
            }
        }
        return new InstanceImpl(attributes, instance.getLabel(), instance.getWeight());
    }
View Full Code Here

        this.dateAttribute = dateAttribute;
    }

    @Override
    public DateTime extractDateTime(Instance<AttributesMap> instance) {
        AttributesMap attributes = instance.getAttributes();
        try {
            Date currentTimeMillis = dateFormat.parse((String) attributes.get(dateAttribute));
            return new DateTime(currentTimeMillis, DateTimeZone.UTC);
        } catch (ParseException e) {
            logger.error("Error parsing date", e);
        }
        return new DateTime();
View Full Code Here

        final Map<String, Map<Serializable, Double>> valueProbsByAttr = Maps.newHashMap();
        Map<Serializable, Double> valueProbs = Maps.newHashMap();
        valueProbs.put(5, 0.2);
        valueProbsByAttr.put("testkey", valueProbs);
        ProbabilityInjectingEnricher probabilityInjectingEnricher = new ProbabilityInjectingEnricher(valueProbsByAttr);
        AttributesMap  inputAttributes = AttributesMap.newHashMap();
        inputAttributes.put("testkey", 5);
        final AttributesMap outputAttributes = probabilityInjectingEnricher.apply(inputAttributes);
        Assert.assertEquals("The pre-existing attribute is still there", 5, outputAttributes.get("testkey"));
        Assert.assertEquals("The newly added attribute is there", 0.2, outputAttributes.get("testkey-PROB"));
    }
View Full Code Here

TOP

Related Classes of quickml.data.AttributesMap

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.