if(Collections.frequency(ItemSet, distinctItemsList) >= support)
{
ItemList.addAll(ItemSet);
FrequentItem1.put(ItemList, Collections.frequency(ItemSet, distinctItemsList));
System.out.println(FrequentItem1);
}
上面的代码只是重复交易,而不是先给出项目,然后再给出频率
ItemList
是单个交易的数组列表
TID。 ItemList
ItemSet
是一个数组列表,其中包含诸如泰诺,温度计,电池等。主要功能如下:>try { Statement statement= connection.createStatement(); String sql="Select distinct TID from transaction"; ResultSet SetTid= statement.executeQuery(sql); while(SetTid.next()) { int initialTID= SetTid.getInt("TID"); TID.add(initialTID); } System.out.println("TID Items"); for(int initialTID : TID) { String sqlitem="Select ItemSet from transaction where TID="+ initialTID; ResultSet setItem= statement.executeQuery(sqlitem); while(setItem.next()) { String items= setItem.getString("ItemSet"); //System.out.println("&&&&&&&&"+ items); ItemList.add(items); ItemSet=Arrays.asList(items.split(",")); noOfTransaction++; System.out.println(initialTID+":"+ items); //System.out.println(initialTID+":"+ ItemList); } for(String items : ItemSet) { System.out.println("&&&&>>"+ items); if(! distinctItemsList.contains(items)) { distinctItemsList.add(items); } } System.out.println("No of transaction"+ noOfTransaction); } }
[
DistinctItem
list是一个包含唯一项的数组列表。
if(Collections.frequency(ItemSet,distinctItemsList)> =支持){ItemList.addAll(ItemSet); FrequentItem1.put(ItemList,Collections.frequency(ItemSet,distinctItemsList)); System.out ....
如果使用的是Java-8,则下面应生成带有单词及其频率的哈希图-