算法直接调用Accord.net Framework封装好的方法,所以要下载Accord机器学习的DLL,下载地址见Accord官网。C4.5算法要引用的包括:
using Accord.IO;
using Accord.MachineLearning.DecisionTrees;
using Accord.MachineLearning.DecisionTrees.Learning;
using Accord.MachineLearning.DecisionTrees.Rules;
using Accord.Math;
using Accord.Statistics.Analysis;
using Accord.Statistics.Filters;
using AForge;
using System.Numerics;
我是写成winform窗体程序形式的,实现了五个按钮的Click()事件,分别用于:
1. MenuFileOpen_Click ():导入测试数据集;
2. upAttributeType_Click():导入测试数据的属性类别,属性类别分为Continuous(数值型)和Symbolic(符号型);
3. upTestingData_Click():导入训练数据集;
4. btnCreate_Click():建立分类模型;
5. btnTestingRun_Click():测试模型。
算法代码:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;
using Accord.IO;
using Accord.MachineLearning.DecisionTrees;
using Accord.MachineLearning.DecisionTrees.Learning;
using Accord.MachineLearning.DecisionTrees.Rules;
using Accord.Math;
using Accord.Statistics.Analysis;
using Accord.Statistics.Filters;
using AForge;
using System.Numerics;
namespace 粗糙集属性选择_V1._0.DecisionTrees
{
public partial class DecisionTreesMainForm : DockContent
{
// 初始化树
DecisionTree tree;
//训练数据表
DataTable myDT = new DataTable();
//属性类别表
DataTable myDTAttType = new DataTable();
//测试数据表
DataTable myTestDT