欢迎来到天天文库
浏览记录
ID:39464670
大小:51.00 KB
页数:9页
时间:2019-07-03
《Apriori关联挖掘算法》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、packagewin;importjava.io.BufferedReader;importjava.io.File;importjava.io.FileNotFoundException;importjava.io.FileReader;importjava.io.IOException;importjava.util.ArrayList;importjava.util.HashMap;importjava.util.List;importjava.util.Map;importjava.util.Set;import
2、java.util.TreeSet;publicclassApriori{privateintminSup;privatestaticListdata;privatestaticList>dataSet;/***@paramargs*/publicstaticvoidmain(String[]args){longstartTime=System.currentTimeMillis();Aprioriapriori=newApriori();//使用书中的测试集/*apriori.s
3、etMinSup(2);data=apriori.buildData();*///设置最小支持度apriori.setMinSup(3);//构造数据集//data=apriori.buildData("E:\retail.dat");data=apriori.buildData("");//构造频繁1项集List>f1Set=apriori.findF1Items(data);apriori.printSet(f1Set,1);List>result=f1Set;int
4、i=2;do{result=apriori.arioriGen(result);apriori.printSet(result,i);i++;}while(result.size()!=0);longendTime=System.currentTimeMillis();System.out.println("共用时:"+(endTime-startTime)+"ms");}publicvoidsetMinSup(intminSup){this.minSup=minSup;}/***构造原始数据集,可以为之提供参数,也可以
5、不提供*如果不提供参数,将按程序默认构造的数据集;*如果提供参数为文件名,则使用文件中的数据集**@return*/ListbuildData(String...fileName){Listdata=newArrayList();intlength=fileName.length;if(length>1){Filefile=newFile(fileName[0]);try{BufferedReaderreader=newBufferedReader(newFileReade
6、r(file));Stringline;while((line=reader.readLine())!=null){data.add(line);}}catch(FileNotFoundExceptione){e.printStackTrace();}catch(IOExceptione){e.printStackTrace();}}else{data.add("I1I2I5");data.add("I2I4");data.add("I2I3");data.add("I1I2I4");data.add("I1I3");d
7、ata.add("I2I3");data.add("I1I3");data.add("I1I2I3I5");data.add("I1I2I3");data.add("I1I2I3");data.add("I1I2I3");data.add("I2I3I4");data.add("I2I3I4");data.add("I2I3I4");}dataSet=newArrayList>();SetdSet;for(Stringd:data){dSet=newTreeSet(
8、);String[]dArr=d.split("");for(Stringstr:dArr){dSet.add(str);}dataSet.add(dSet);}returndata;}/***找出候选1项集**@paramdata*@return*/List>findF1Items(List
此文档下载收益归作者所有