91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 5KB
    文件類型: .zip
    金幣: 2
    下載: 0 次
    發(fā)布日期: 2021-05-20
  • 語言: Java
  • 標簽: Aprior??Java??

資源簡介

Java語言實現的Apriori算法,數據可由excel數據表格提供,eclipse導入即可運行

資源截圖

代碼片段和文件信息

package?asocciationRule.apriori;
import?java.util.HashMap;
import?java.util.HashSet;
import?java.util.Iterator;
import?java.util.Map;
import?java.util.Set;
import?java.util.TreeMap;

public?class?AprioriAlgorithm?{
private?Map>?txDatabase;?//?事務數據庫
private?Float?minSup;?//?最小支持度
private?Float?minConf;?//?最小置信度
private?Integer?txDatabaseCount;?//?事務數據庫中的事務數

private?Map>>?freqItemSet;?//?頻繁項集集合
private?Map?Set>>?assiciationRules;?//?頻繁關聯規(guī)則集合

public?AprioriAlgorithm(Map>?txDatabase?Float?minSup
Float?minConf)?{
this.txDatabase?=?txDatabase;
this.minSup?=?minSup;
this.minConf?=?minConf;
this.txDatabaseCount?=?this.txDatabase.size();
freqItemSet?=?new?TreeMap>>();
assiciationRules?=?new?HashMap?Set>>();
}

public?Map?Float>?getFreq1ItemSet()?{//zzx?生成一階頻繁項集
Map?Float>?freq1ItemSetMap?=?new?HashMap?Float>();
Map?Integer>?candFreq1ItemSet?=?this.getCandFreq1ItemSet();
Iterator?Integer>>?it?=?candFreq1ItemSet
.entrySet().iterator();
while?(it.hasNext())?{
Map.Entry?Integer>?entry?=?it.next();
//?計算支持度
Float?supported?=?new?Float(entry.getValue().toString())
/?new?Float(txDatabaseCount);
if?(supported?>=?minSup)?{
freq1ItemSetMap.put(entry.getKey()?supported);
}
}
return?freq1ItemSetMap;
}

public?Map?Integer>?getCandFreq1ItemSet()?{
Map?Integer>?candFreq1ItemSetMap?=?new?HashMap?Integer>();
Iterator>>?it?=?txDatabase.entrySet()
.iterator();
//?統計支持數,生成候選頻繁1-項集
while?(it.hasNext())?{
Map.Entry>?entry?=?it.next();
Set?itemSet?=?entry.getValue();
for?(String?item?:?itemSet)?{
Set?key?=?new?HashSet();
key.add(item.trim());
if?(!candFreq1ItemSetMap.containsKey(key))?{
Integer?value?=?1;
candFreq1ItemSetMap.put(key?value);
}?else?{
Integer?value?=?1?+?candFreq1ItemSetMap.get(key);
candFreq1ItemSetMap.put(key?value);
}
}
}
return?candFreq1ItemSetMap;
}

/*
?*?zzx生成m+1階候選項集
?*/
public?Set>?aprioriGen(int?m?Set>?freqMItemSet)?{
Set>?candFreqKItemSet?=?new?HashSet>();
Iterator>?it?=?freqMItemSet.iterator();
Set?originalItemSet?=?null;
while?(it.hasNext())?{
originalItemSet?=?it.next();
Iterator>?itr?=?this.getIterator(originalItemSetfreqMItemSet);
while?(itr.hasNext())?{
Set?identicalSet?=?new?HashSet();?//?兩個項集相同元素的集合(集合的交運算)
identicalSet.addAll(originalItemSet);
Set?set?=?itr.next();
identicalSet.retainAll(set);?//?identicalSet中剩下的元素是identicalSet與set集合中相同的元素

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????9780??2016-03-23?20:58??apriori\AprioriAlgorithm.java
?????文件????????2248??2014-09-15?15:15??apriori\ProperSubsetCombination.java
?????文件????????2242??2014-09-15?15:15??apriori\TestAprioriAlgorithm.java
?????目錄???????????0??2018-10-27?21:30??apriori\

評論

共有 條評論