C#实现简单的K-means聚类算法

本文档展示了如何使用C#实现K-means聚类算法。代码定义了一个名为`Kmeans`的类,包含数据输入、类别数、特征数等属性,并实现了计算过程,包括初始化质心、分配数据点、更新质心和判断质心是否稳定等关键步骤。
摘要由CSDN通过智能技术生成

namespace K_means
{
    public class Kmeans
    {
        double[,] inPut;//数据
        int k;//类别数
        int Num;//文件数
        int sub;//特征值数
        int[] groupNum ;//各组数目
        public Kmeans(double[,] input)
        {
            inPut = input;
            Num = input.GetLength(0);
            sub = input.GetLength(1);
            k = (int)Math.Sqrt(Num) + 1;
            groupNum = new int[k];
        }

        public int[,] GetProcess()
        {
            double[,] tmpCenter = new double[k, sub];
            for (int i = 0; i < k; i++)
                for (int j = 0; j < sub; j++)
                    tmpCenter[i, j] = inPut[i, j];
            double[,] preCenter = new double[k, sub];
            int[,] resultP ;//= new int[k, Num];
            whi

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值