Softwareprojektmanagement/src/main/java/de/hsel/spm/baudas/analysis/ShoppingTimes.java

50 lines
1.2 KiB
Java

package de.hsel.spm.baudas.analysis;
import weka.core.Instance;
import weka.core.Instances;
import java.io.File;
import java.util.HashMap;
import java.util.Map;
/**
* Shopping Times Analysis.
*
* @author Johannes Theiner
* @version 0.1
* @since 0.1
**/
public class ShoppingTimes implements Analysis<Map<DayHour, Integer>> {
private Instances instances;
private Map<DayHour, Integer> result;
public ShoppingTimes(File file) {
instances = load(file);
}
/**
* get customer count at specific times.
*
* @return Map of Day-Hour Combinations and the corresponding customer count
*/
@Override
public Map<DayHour, Integer> getResult() {
if (result != null) {
return result;
}
result = new HashMap<>();
for (Instance instance : instances) {
DayHour dayHour = new DayHour(instance.stringValue(Attribute.SHOPPING_DAY), instance.stringValue(Attribute.SHOPPING_HOUR));
int tmp = 1;
if (result.containsKey(dayHour))
tmp = result.get(dayHour) + 1;
result.put(dayHour, tmp);
}
return result;
}
}