• 大小: 171KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-08
  • 语言: 其他
  • 标签:

资源简介

包含Apriori算法实现源码及实现的EXE文件。有界面输入输出,处理txt文件。

资源截图

代码片段和文件信息



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; // 频繁关联规则集合

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>>();
}

/**
* 扫描事务数据库,计算频繁1-项集
* @return
*/
public Map Float> getFreq1ItemSet() {
   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;
}

/**
* 计算候选频繁1-项集
* @return
*/
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;
}

/**
* 根据频繁(k-1)-项集计算候选频繁k-项集

* @param m 其中m=k-1
* @param freqMItemSet 频繁(k-1)-项集
* @return
*/
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(originalItemSet freqMItemSet);
    while(itr.hasNext()) {
     Set identicalSet = new HashSet(); // 两个项集相同元素的集合(集合的交运算)    
     identicalSet.addAll(origin

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        232  2010-05-23 10:25  datamining\.classpath

     文件        386  2010-05-27 00:08  datamining\.project

     文件      34842  2010-05-24 16:51  datamining\1.jpg

     文件       9912  2010-05-27 00:08  datamining\bin\AprioriAlgorithm.class

     文件       1133  2010-05-27 00:08  datamining\bin\Association$1.class

     文件       1133  2010-05-27 00:08  datamining\bin\Association$2.class

     文件      11638  2010-05-27 00:08  datamining\bin\Association.class

     文件       2653  2010-05-27 00:10  datamining\bin\DataMining.class

     文件       1029  2010-05-27 00:08  datamining\bin\ImagePanel.class

     文件       6735  2010-05-27 00:08  datamining\bin\jishiben.class

     文件       2196  2010-05-27 00:08  datamining\bin\ProperSubsetCombination.class

     文件      10958  2010-05-23 11:20  datamining\src\AprioriAlgorithm.java

     文件      14596  2010-05-24 09:59  datamining\src\Association.java

     文件       2754  2010-05-27 00:10  datamining\src\DataMining.java

     文件        604  2010-05-23 10:29  datamining\src\ImagePanel.java

     文件       9437  2010-05-23 10:31  datamining\src\jishiben.java

     文件       2612  2010-05-23 10:29  datamining\src\ProperSubsetCombination.java

     文件     182272  2010-05-27 00:14  dm.exe

     文件      34283  2010-05-24 17:29  1.jpg

     目录          0  2010-05-27 00:10  datamining\bin

     目录          0  2010-05-27 00:10  datamining\src

     目录          0  2010-05-27 00:14  datamining

----------- ---------  ---------- -----  ----

               329405                    22


评论

共有 条评论