资源简介
Apriori算法的c#实现,比较简短,两个文件,500多行。测试文件在Data文件夹下,其中数据是程序中的GenerateTestFile函数随机生成的。

代码片段和文件信息
using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Collections;
using System.IO;
using System.Threading;
namespace Apriori
{
//关联规则的右半部分,例如 1^2^7 ==> 3^5 [12 0.50],即箭头右边的部分
public class RuleRightPart
{
public string items;
public int support;
public double confidence;
public RuleRightPart()
{ }
public RuleRightPart(string str int i double d)
{
this.items = str;
this.support = i;
this.confidence = d;
}
}
public class Apriori
{
static void Main(string[] args)
{
Apriori apriori = new Apriori(200 0.05 0.5);
apriori.GetRules();
}
public Apriori()
{ }
public Apriori(int _maxId double _support double _confidence)
{
this.maxId = _maxId;
this.support = _support;
this.confidence = _confidence;
}
public static string sDataFile = @“D:\Projects\Apriori\Data\test.txt“;//保存事务集的文件路径
private int maxId; //事务的最大编号
private double support; //支持度
private double confidence; //置信度
private List AllTransactions = new List(); //所有事务
private List NeedReview = new List(); //判断某事务是否需要遍历
///
/// 从文件中加载所有事务
///
private void LoadAllItems()
{
string sLine;
string[] strArray;
char[] separator = { ‘\t‘ };
int[] aPrev = new int[maxId + 1];
int[] aCurr = new int[maxId + 1];
try
{
StreamReader sr = new StreamReader(sDataFile Encoding.Default false);
sLine = sr.ReadLine();
while (sLine != null)
{
strArray = sLine.Split(separator System.StringSplitOptions.RemoveEmptyEntries);
//利用数组去重和排序
foreach (string str in strArray)
{
int ix = int.Parse(str);
if ((ix <= maxId) && (aPrev[ix] == aCurr[ix]))
++aCurr[ix];
}
List l = new List();
for (int ix = 0; ix <= maxId; ++ix)
if (aCurr[ix] == 1 + aPrev[ix])
{
l.Add(ix);
aPrev[ix] = aCurr[ix];
}
DataItem item = new DataItem(l);
AllTransactions.Add(item);
NeedReview.Add(true);
sLine = sr.ReadLine();
}
sr.Close();
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 12461 2012-12-09 21:54 Apriori\Apriori.cs
文件 2526 2012-11-29 19:42 Apriori\Apriori.csproj
文件 903 2012-11-28 16:36 Apriori\Apriori.sln
..A..H. 15872 2012-12-06 21:54 Apriori\Apriori.suo
文件 10240 2012-11-30 15:38 Apriori\bin\Debug\Apriori.exe
文件 28160 2012-11-30 15:38 Apriori\bin\Debug\Apriori.pdb
文件 14328 2012-11-30 15:37 Apriori\bin\Debug\Apriori.vshost.exe
文件 490 2007-07-21 01:33 Apriori\bin\Debug\Apriori.vshost.exe.manifest
文件 10752 2012-12-09 21:47 Apriori\bin\Release\Apriori.exe
文件 30208 2012-12-09 21:47 Apriori\bin\Release\Apriori.pdb
文件 14328 2012-12-09 11:00 Apriori\bin\Release\Apriori.vshost.exe
文件 490 2007-07-21 01:33 Apriori\bin\Release\Apriori.vshost.exe.manifest
文件 6869 2012-11-30 15:34 Apriori\Data\test.txt
文件 7381 2012-12-09 21:36 Apriori\DataItem.cs
文件 234 2012-11-30 15:37 Apriori\obj\Debug\Apriori.csproj.FileListAbsolute.txt
文件 10240 2012-11-30 15:38 Apriori\obj\Debug\Apriori.exe
文件 28160 2012-11-30 15:38 Apriori\obj\Debug\Apriori.pdb
文件 244 2012-12-09 11:00 Apriori\obj\Release\Apriori.csproj.FileListAbsolute.txt
文件 10752 2012-12-09 21:47 Apriori\obj\Release\Apriori.exe
文件 30208 2012-12-09 21:47 Apriori\obj\Release\Apriori.pdb
文件 1352 2012-11-28 16:36 Apriori\Properties\AssemblyInfo.cs
目录 0 2012-11-29 17:27 Apriori\obj\Debug\Refactor
目录 0 2012-11-28 16:36 Apriori\obj\Debug\TempPE
目录 0 2012-11-30 15:39 Apriori\obj\Release\TempPE
目录 0 2012-11-30 09:54 Apriori\bin\Debug
目录 0 2012-11-30 15:39 Apriori\bin\Release
目录 0 2012-11-30 15:38 Apriori\obj\Debug
目录 0 2012-12-09 21:47 Apriori\obj\Release
目录 0 2012-11-30 15:39 Apriori\bin
目录 0 2012-12-09 21:55 Apriori\Data
............此处省略6个文件信息
- 上一篇:锐浪asp.net MVC html5报表显示
- 下一篇:ASP.NET漂亮的选项卡
相关资源
- C#百度地图源码
- Visual C#.2010从入门到精通配套源程序
- C# 软件版本更新
- C#屏幕软键盘源码,可以自己定制界面
- 智慧城市 智能家居 C# 源代码
- c#获取mobile手机的IMEI和IMSI
- C#实现简单QQ聊天程序
- 操作系统 模拟的 欢迎下载 C#版
- C#写的计算机性能监控程序
- 用C#实现邮件发送,有点类似于outlo
- MVC model层代码生成器 C#
- c#小型图书销售系统
- C# Socket Server Client 通讯应用 完整的服
- c# winform 自动登录 百度账户 源代码
- C#编写的16进制计算器
- C#TCP通信协议
- C# 数据表(Dataset)操作 合并 查询一
- C#语音识别系统speechsdk51,SpeechSDK51L
- 数据库备份还原工具1.0 C# 源码
-
[免费]xm
lDocument 节点遍历C# - EQ2008LEDc#开发实例
- DirectX.Capturec# winform 操作摄像头录像附
- c# 实现的最大最小距离方法对鸢尾花
- C#版保龄球记分代码
- C#自定义控件
- 基于c#的实验室设备管理系统621530
- C# 使用ListView控件实现图片浏览器(源
- C#简单窗体聊天程序
- C#指纹识别系统程序 报告
- c# 高校档案信息管理系统
评论
共有 条评论