• 大小: 31KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-16
  • 语言: C#
  • 标签: 模糊聚类  

资源简介

该代码是模糊均值聚类算法源代码,用C#语言编写,对于数据挖掘的学员有一定帮助。

资源截图

代码片段和文件信息

using System;
using System.Collections.Generic;
using System.Text;

namespace FCM
{
    class FCM
    {
        const int SIZE1 = 10;
        double dDelta;
        int nProcess;

        //这个函数计算欧氏距离
        public double distance(double []v1double []v2double dimension)            
        {
            int i;
            double result;
            result=0;
            for(i=0;i            {
                result+=(v1[i]-v2[i])*(v1[i]-v2[i]);
            }
            result=Math.Sqrt(result);
            return result;
        }

        //此函数计算优化的目标函数
        public double objectfun(double[] u double[] v double[] x int c int pattern int dimension float m)
        {
            int ijk;
            double []v1 = new double [SIZE1];
            double []v2 = new double [SIZE1];
            double objective;
            objective=0;
            for(i=0;i            {
                for(j=0;j                {
                    for(k=0;k                    {
                        v1[k]=x[j*dimension+k];
                        v2[k]=v[i*dimension+k];
                    }
                    objective+=Math.Pow(u[i*pattern+j]m)*distance(v1v2dimension)*distance(v1v2dimension);
                }
            }
            return objective;
        }
        
// 本函数完成FCM聚类算法
//参数分为三组:基本聚类样本的信息、算法的参数信息、算法控制信息、输出信息。
//其中:
//adi_pattern[]为样本点向量  指标为:样本指标*维数+维数指标
//n_dimension是每个样本的维数
//n_numpattern是样本的个数


//***************关于上面三个参数的说明***********
//adi_pattern[]为一维数组,它的数目由n_dimension*n_numpattern确定
//************************************************
  
//n_catacount是要分类的数目
//f_weightm是fcm的重要控制参数m
//n_maxcycle是最大循环次数
//d_threshold为算法结束迭代的阈值
//ado_matrixu[]为输出的划分矩阵   指标为:聚类指标*样本数+样本指标
//ado_center[]为输出的样本的聚类中心向量  指标为:据类指标*维数+维数指标
//d_funj为目标函数的值        
        public int funfcm(double[] adi_pattern int n_dimension int n_numpattern int n_catacount float f_weightm int n_maxcycle double d_threshold double[] ado_matrixu double[] ado_center double d_funj)
        {
            int jiktcount;
            int n_cycle;
            int n_selnum;
            int flagtemp;
            double f_templastvdeltat_temp;
            double []v1 = new double [SIZE1];
            double []v2 = new double [SIZE1];
            double min_dis=0.001;//距离的最小值
            //验证输入参数的有效性:
            if(n_catacount>=n_numpattern||f_weightm<=1)
            {
                return 1;
            }
            //srand( (unsigned)time( NULL ) );
            Random Rnd = new Random();
            //随机的选取初始迭代点作为初始的聚类中心。
            for(j=0;j            {
                t_temp = Rnd.Next(1);
                //t_temp/= MAX_RAND;
                //ado_center[j]=t_temp;
                //n_selnum=int.Parse(rand()*n_numpattern/(n_catacount*MAX_RAND)+j*int.Parse(n_numpattern/n_catacount));
       

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

     文件      20480  2008-12-29 15:08  FCM\FCM\bin\Debug\FCM.exe

     文件      24064  2008-12-29 15:08  FCM\FCM\bin\Debug\FCM.pdb

     文件       5632  2008-08-03 18:56  FCM\FCM\bin\Debug\FCM.vshost.exe

     文件       8743  2008-12-29 15:08  FCM\FCM\FCM.cs

     文件       3098  2008-08-03 18:56  FCM\FCM\FCM.csproj

     文件        330  2008-08-03 18:56  FCM\FCM\frmFCM.cs

     文件       1151  2008-08-03 18:56  FCM\FCM\frmFCM.Designer.cs

     文件        784  2008-12-29 15:06  FCM\FCM\obj\Debug\FCM.csproj.GenerateResource.Cache

     文件      20480  2008-12-29 15:08  FCM\FCM\obj\Debug\FCM.exe

     文件      24064  2008-12-29 15:08  FCM\FCM\obj\Debug\FCM.pdb

     文件        180  2008-12-29 15:06  FCM\FCM\obj\Debug\FCM.Properties.Resources.resources

     文件        209  2008-12-29 15:08  FCM\FCM\obj\FCM.csproj.FileList.txt

     文件        463  2008-08-03 18:56  FCM\FCM\Program.cs

     文件       1154  2008-08-03 18:56  FCM\FCM\Properties\AssemblyInfo.cs

     文件       2860  2008-08-03 18:56  FCM\FCM\Properties\Resources.Designer.cs

     文件       5350  2008-08-03 18:56  FCM\FCM\Properties\Resources.resx

     文件       1086  2008-08-03 18:56  FCM\FCM\Properties\Settings.Designer.cs

     文件        249  2008-08-03 18:56  FCM\FCM\Properties\Settings.settings

     文件        898  2008-08-03 18:56  FCM\FCM.sln

    ..A..H.     13824  2008-12-29 15:59  FCM\FCM.suo

     目录          0  2008-08-03 18:56  FCM\FCM\obj\Debug\TempPE

     目录          0  2008-08-03 18:56  FCM\FCM\bin\Debug

     目录          0  2008-12-29 15:08  FCM\FCM\obj\Debug

     目录          0  2008-08-03 18:56  FCM\FCM\bin

     目录          0  2008-08-03 18:56  FCM\FCM\obj

     目录          0  2008-08-03 18:56  FCM\FCM\Properties

     目录          0  2008-12-29 15:08  FCM\FCM

     目录          0  2008-08-03 18:56  FCM

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

               135099                    28

............此处省略1个文件信息

评论

共有 条评论

相关资源