January 17, 2009, 9:58 pm
Try this example:
ClassificationDataSet dataSet = DataSetFactory.IRIS();
SVMClassifier svm = new SVMClassifier();
svm.train(dataSet);
svm.predict(dataSet);
dataSet.showGUI();
If you get an error, you probably need LibSVM in your classpath.
January 17, 2009, 9:42 pm
First, you create a RelationalDataSet and add all purchases to separate RelationalSamples:
RelationalDataSet dataSet = new RelationalDataSet();
RelationalSample s = new RelationalSample("OrderID 1234");
s.addObject("Product 1");
s.addObject("Product 2");
s.addObject("Product 3");
s.addObject("Product 4");
dataSet.getSamples().add(s);
s = new RelationalSample("OrderID 1235");
s.addObject("Product 1");
s.addObject("Product 2");
s.addObject("Product 3");
dataSet.getSamples().add(s);
s = new RelationalSample("OrderID 1236");
s.addObject("Product 1");
s.addObject("Product 6");
s.addObject("Product 7");
dataSet.getSamples().add(s);
s = new RelationalSample("OrderID 1237");
s.addObject("Product 7");
s.addObject("Product 2");
s.addObject("Product 3");
s.addObject("Product 8");
dataSet.getSamples().add(s);
s = new RelationalSample("OrderID 1238");
s.addObject("Product 7");
s.addObject("Product 4");
s.addObject("Product 3");
s.addObject("Product 8");
dataSet.getSamples().add(s);
After that, you do the analysis and visualize the results:
MarketBasketAnalysis mba = new MarketBasketAnalysis();
mba.setMinSupport(2);
dataSet.showGUI();
RelationalDataSet result = mba.calculate(dataSet);
result.showGUI();