创建一个Java Project,使用weka中自带的数据集weather.nomial.arff和weather.number.arff,调用weka中的apriori算法,以及FPGrowth算法分别进行挖掘关联规则。
public class test3 {
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
/*处理weather.nominal.arff
* */
Instances instances = DataSource.read("C:\\Program Files (x86)\\Weka-3-5\\data\\weather.nominal.arff");
instances.setClassIndex(instances.numAttributes() - 1);
/*创建Apriori实例
* */
Apriori apriori = new Apriori();
apriori.buildAssociations( instances );
System.out.println(apriori.toString());
/*处理weather.number.arff
* */Instances test=DataSource.read("C:\\Program Files (x86)\\Weka-3-5\\data\\weather.arff");
//获取对象的数据
test.setClassIndex(test.numAttributes() - 1);
//创建一个离散实例
Discretize discretize = new Discretize();
/*离散化处理
* */
String[] options = new String[6];
options[0] = "-B"; options[1] = "8"; options[2] = "-M"; options[3] = "-1.0"; options[4] = "-R"; options[5] = "2-last";
discretize.setOptions(options);
discretize.setInputFormat(test);
/*获取离散化处理后的数据对象
* */
Instances newInstances2 = Filter.useFilter(test, discretize);
newInstances2.setClassIndex(newInstances2.numAttributes() - 1);
/*创建Apriori实例
* */
Apriori apriori2 = new Apriori();
apriori2.buildAssociations(newInstances2 );
System.out.println(apriori2.toString());
}
}