Example usage for com.google.common.collect Table rowKeySet

List of usage examples for com.google.common.collect Table rowKeySet

Introduction

In this page you can find the example usage for com.google.common.collect Table rowKeySet.

Prototype

Set<R> rowKeySet();

Source Link

Document

Returns a set of row keys that have one or more values in the table.

Usage

From source file:com.przemo.etl.transformations.MovingAverageTransformation.java

protected Table calculateMovingAverage(Table table, int period, String column) {
    Table t = HashBasedTable.create();/*from w w  w. ja  v  a  2 s  .  co m*/
    int ix = 0;
    double s0;
    int ixCounter = 0;
    double[] sq = new double[period];
    String cn = resultingColumnName(period);
    for (Object r : table.rowKeySet()) {
        sq[ixCounter] = (double) table.get(r, column) / period;
        ix++;
        ixCounter++;
        if (ix >= period) {
            s0 = 0;
            for (double d : sq) {
                s0 += d;
            }
            t.put(r, cn, s0);
            if (ixCounter == period) {
                ixCounter = 0;
            }
        }
    }
    return t;
}

From source file:mtsar.processors.answer.KOSAggregator.java

private Table<Integer, Integer, Double> tasksUpdate(Table<Integer, Integer, Short> graph,
        Table<Integer, Integer, Double> ys) {
    final Table<Integer, Integer, Double> xs = HashBasedTable.create(graph.rowKeySet().size(),
            graph.columnKeySet().size());

    for (final Table.Cell<Integer, Integer, Short> cell : graph.cellSet()) {
        double sumProduct = 0.0;

        final int taskId = cell.getRowKey(), workerId = cell.getColumnKey();
        final Map<Integer, Short> workers = graph.row(taskId);

        for (final Map.Entry<Integer, Short> worker : workers.entrySet()) {
            if (worker.getKey() == workerId)
                continue;
            sumProduct += worker.getValue() * ys.get(taskId, worker.getKey());
        }//  w  w w .  ja  va 2 s  .  c o m

        xs.put(taskId, workerId, sumProduct);
    }

    return xs;
}

From source file:mtsar.processors.answer.KOSAggregator.java

private Table<Integer, Integer, Double> workersUpdate(Table<Integer, Integer, Short> graph,
        Table<Integer, Integer, Double> xs) {
    final Table<Integer, Integer, Double> ys = HashBasedTable.create(graph.rowKeySet().size(),
            graph.columnKeySet().size());

    for (final Table.Cell<Integer, Integer, Short> cell : graph.cellSet()) {
        double sumProduct = 0.0;

        final int taskId = cell.getRowKey(), workerId = cell.getColumnKey();
        final Map<Integer, Short> tasks = graph.column(workerId);

        for (final Map.Entry<Integer, Short> task : tasks.entrySet()) {
            if (task.getKey() == taskId)
                continue;
            sumProduct += task.getValue() * xs.get(task.getKey(), workerId);
        }/*from   w  w w .  j  a  va2 s . c o m*/

        ys.put(taskId, workerId, sumProduct);
    }

    return ys;
}

From source file:com.google.devtools.build.android.resources.ResourceSymbols.java

public Map<ResourceType, Set<String>> asFilterMap() {
    Map<ResourceType, Set<String>> filter = new EnumMap<>(ResourceType.class);
    Table<String, String, RTxtSymbolEntry> symbolTable = asTable();
    for (String typeName : symbolTable.rowKeySet()) {
        Set<String> fields = new HashSet<>();
        for (RTxtSymbolEntry symbolEntry : symbolTable.row(typeName).values()) {
            fields.add(symbolEntry.getName());
        }//from  ww w. j  a  v a  2s  . c o m
        if (!fields.isEmpty()) {
            filter.put(ResourceType.getEnum(typeName), fields);
        }
    }
    return filter;
}

From source file:com.fredhopper.core.connector.index.generate.validator.Set64AttributeValidator.java

@Override
protected boolean isValidSize(final FhAttributeData attribute, final List<Violation> violations) {
    final Table<Optional<String>, Optional<Locale>, String> values = attribute.getValues();
    if (values.isEmpty()) {
        rejectValue(attribute, violations,
                "The \"set64\" attribute \"" + attribute.getAttributeId() + "\" has no values assigned.");
        return false;
    }//from   w w  w.  j  a  v a 2s . c  om
    if (values.rowKeySet().size() > MAX_SIZE) {
        rejectValue(attribute, violations, "The \"set64\" attribute \"" + attribute.getAttributeId()
                + "\" values total must not exceed 64.");
        return false;
    }
    return true;
}

From source file:com.fredhopper.core.connector.index.generate.validator.List64AttributeValidator.java

@Override
protected boolean isValidSize(final FhAttributeData attribute, final List<Violation> violations) {
    final Table<Optional<String>, Optional<Locale>, String> values = attribute.getValues();
    if (values.isEmpty()) {
        rejectValue(attribute, violations,
                "The \"list64\" attribute \"" + attribute.getAttributeId() + "\" has no values assigned.");
        return false;
    }/* w w w.  j a  va2  s. c o  m*/
    if (values.rowKeySet().size() > MAX_SIZE) {
        rejectValue(attribute, violations, "The \"list64\" attribute \"" + attribute.getAttributeId()
                + "\" values total must not exceed 64.");
        return false;
    }
    return true;
}

From source file:de.tum.bgu.msm.syntheticPopulationGenerator.munich.allocation.AssignSchools.java

private void initializeSchoolCapacity() {

    schoolCapacityMap = new HashMap<>();
    numberOfVacantPlacesByType = new HashMap<>();
    Table<Integer, Integer, Integer> schoolCapacity = dataSetSynPop.getSchoolCapacity();
    Iterator<Integer> iteratorRow = schoolCapacity.rowKeySet().iterator();
    while (iteratorRow.hasNext()) {
        int zone = iteratorRow.next();
        Iterator<Integer> iteratorCol = schoolCapacity.columnKeySet().iterator();
        while (iteratorCol.hasNext()) {
            int schoolType = iteratorCol.next();
            int places = schoolCapacity.get(zone, schoolType);
            if (places > 0) {
                Map<Integer, Integer> prevPlaces = new HashMap<>();
                if (schoolCapacityMap.get(schoolType) != null) {
                    prevPlaces = schoolCapacityMap.get(schoolType);
                }/*from  w  ww.j a v  a2s.c  o m*/
                prevPlaces.put(zone, places);
                schoolCapacityMap.put(schoolType, prevPlaces);
                int previousPlaces = 0;
                if (numberOfVacantPlacesByType.get(schoolType) != null) {
                    previousPlaces = numberOfVacantPlacesByType.get(schoolType);
                }
                numberOfVacantPlacesByType.put(schoolType, previousPlaces + places);
            }
        }
    }
}

From source file:com.google.gerrit.server.mail.MergedSender.java

private String format(String type, Table<Account.Id, String, PatchSetApproval> approvals) {
    StringBuilder txt = new StringBuilder();
    if (approvals.isEmpty()) {
        return "";
    }//from  ww  w  .ja  v  a 2s.  co  m
    txt.append(type).append(":\n");
    for (Account.Id id : approvals.rowKeySet()) {
        txt.append("  ");
        txt.append(getNameFor(id));
        txt.append(": ");
        boolean first = true;
        for (LabelType lt : labelTypes.getLabelTypes()) {
            PatchSetApproval ca = approvals.get(id, lt.getName());
            if (ca == null) {
                continue;
            }

            if (first) {
                first = false;
            } else {
                txt.append("; ");
            }

            LabelValue v = lt.getValue(ca);
            if (v != null) {
                txt.append(v.getText());
            } else {
                txt.append(lt.getName());
                txt.append('=');
                txt.append(LabelValue.formatValue(ca.getValue()));
            }
        }
        txt.append('\n');
    }
    txt.append('\n');
    return txt.toString();
}

From source file:mtsar.processors.answer.KOSAggregator.java

private Map<Integer, Double> converge(Table<Integer, Integer, Short> graph, int kMax) {
    final RealDistribution distribution = new NormalDistribution(1, 1);

    Table<Integer, Integer, Double> ys = HashBasedTable.create(graph.rowKeySet().size(),
            graph.columnKeySet().size());

    for (final Table.Cell<Integer, Integer, Short> cell : graph.cellSet()) {
        ys.put(cell.getRowKey(), cell.getColumnKey(), distribution.sample());
    }//from   w ww  .j  a v  a2 s.c  o m

    for (int k = 1; k <= kMax; k++) {
        final Table<Integer, Integer, Double> xs = tasksUpdate(graph, ys);
        if (k < kMax)
            ys = workersUpdate(graph, xs);
    }

    final Map<Integer, Double> estimations = new HashMap<>();

    for (final Integer taskId : graph.rowKeySet()) {
        double sumProduct = 0.0;

        final Map<Integer, Double> workers = ys.row(taskId);
        for (final Map.Entry<Integer, Double> worker : workers.entrySet()) {
            sumProduct += graph.get(taskId, worker.getKey()) * worker.getValue();
        }

        estimations.put(taskId, sumProduct);
    }

    return estimations;
}

From source file:lu.list.itis.dkd.aig.match.KMedoids.java

/**
 * Constructor initialising all fields./* ww w  .  ja  va2  s .  c  om*/
 *
 * @param matrix
 *        The distance matrix to initialise the KMedoids with.
 */
public KMedoids(final Table<Match, Match, Float> matrix) {
    elementCount = matrix.rowKeySet().size();
    map = new Match[elementCount];
    int i = 0;
    distances = new float[elementCount][elementCount];
    mindistances = new float[elementCount];
    map = matrix.rowKeySet().toArray(map);

    for (i = 0; i < elementCount; i++) {
        for (int j = 0; j < elementCount; j++) {
            distances[i][j] = 1 - matrix.get(map[i], map[j]);
        }
    }
    clusterID = new int[elementCount];
    Arrays.fill(clusterID, -1);
}