⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 apriorisets.h

📁 使用C++STL实现的关联规则挖掘Apriori算法
💻 H
字号:
/*----------------------------------------------------------------------  File     : AprioriSets.h  Contents : apriori algorithm for finding frequent sets  Author   : Bart Goethals  Update   : 1/6/2003 ----------------------------------------------------------------------*/#include <set>#include <vector>#include <fstream>using namespace std;#include "Data.h"#include "Item.h"class Element{public:	Element(int iold, int inew=0) : oldid(iold), id(inew){}	int oldid;	int id;	bool operator< (const Element  &e) const {return oldid < e.oldid;}};class AprioriSets {public:	AprioriSets();	~AprioriSets();	void setData(char *fn, int type);	int setOutputSets(char *fn);	void setMinSup(int ms){minsup=ms;}	int generateSets();	void setVerbose(){verbose=true;}	void setCountType(int t){countType=t;}protected:		int generateCandidates(int level);	int generateCandidates(int level, set<Item> *items, int depth, int *current);	bool checkSubsets(int sl, int *iset, set<Item> *items, int spos, int depth);	int countCandidates(int level);	// test k-subsets of transaction that are candidate itemsets	int processTransaction(int level, Transaction *t, set<Item> *items, int spos, int depth);	// test all candidates whether contained in transaction	int processTransaction2(int level, Transaction *t, set<Item> *items, int spos, int depth);	void ReOrder();	int pruneNodes(int level);	int pruneNodes(int level, set<Item> *items, int depth);	int pruneCandidates(int level);	int pruneCandidates(int level, set<Item> *items, int depth, int *itemset);	void printSet(const Item& item, int *itemset, int length);private:	Item *trie;	int minsup;	ofstream setsout;	Data *data;	int *remap;	set<Element> *relist;	bool verbose;	int countType;};

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -