package aima.core.learning.learners; import java.util.ArrayList; import java.util.List; import aima.core.learning.framework.DataSet; import aima.core.learning.framework.Example; import aima.core.learning.framework.Learner; import aima.core.util.Util; /** * @author Ravi Mohan * */ public class MajorityLearner implements Learner { private String result; public void train(DataSet ds) { List<String> targets = new ArrayList<String>(); for (Example e : ds.examples) { targets.add(e.targetValue()); } result = Util.mode(targets); } public String predict(Example e) { return result; } public int[] test(DataSet ds) { int[] results = new int[] { 0, 0 }; for (Example e : ds.examples) { if (e.targetValue().equals(result)) { results[0] = results[0] + 1; } else { results[1] = results[1] + 1; } } return results; } }