• 大小: 992KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-25
  • 语言: C#
  • 标签: C#  正态分布  算法  

资源简介

前几天出了个测试版,然后自己发现公式错了,把方差误认为是标准差了。其实实现很简单,不过发布资源后被某个朋友批判了下,现在发出源码,大家有兴趣就看看,没兴趣就无视。

资源截图

代码片段和文件信息

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

namespace MathExtends
{
    /// 
    /// 进行标准正态分布的模型库
    /// 作者:MtAzrael
    /// 日期:2013-8-13
    /// 

    public class MathExtend
    {
        private List mathData;
        private double mathMean=-1;
        private double mathStandDev=-1;
        /// 
        /// 给扩展方法赋值,用于计算标准差和平均值,平均数使用MathMean返回,标准差使用MathStandDev返回
        /// 

        public List MathData
        {
            set { mathData = value; }
            get {return null;}
        }
        /// 
        /// 该函数功能计算平均数在MathData不为空时返回有效数值,否则返回0如果遇到错误则返回-1
        /// 

        public double MathMean
        {
            get
            {
                if (mathData != null)
                {
                    return Mathmean(mathData);
                }
                return 0;
            }
        }
        /// 
        /// 该函数功能计算标准差在MathData不为空时返回有效数值,否则返回0并且此函数需要MathMean的支持否则错误返回-1
        /// 

        public double MathStandDev
        {
            get 
            {
                if (mathData != null)
                {
                    return Mathstanddev(mathData);
                }
                return 0;
            }
        }
        /// 
        /// 计算平均值的算法通过内部函数MathMean返回。
        /// 

        /// 参数为double数据列表
        /// 
        private double Mathmean(List mathData)
        {
            double MathMean = 0;
            try
            {
                int count = mathData.Count;
                for (int i = 0; i < count; i++)
                {
                    MathMean += mathData[i];
                }
                MathMean/=count;
                mathMean = MathMean;
            }
            catch (Exception e)
            {
                if (e != null)
                {
                    MathMean = -1;
                    return MathMean;
                }
            }
            return MathMean;
        }
        /// 
        /// 计算标准差的算法通过内部函数MathVariance返回。
        /// 

        /// 参数为double数据列表
        /// 
        private double Mathstanddev(List mathData)
        {
            double MathStanddev = 0;
            if (mathMean == -1)
            {
                if (MathMean == -1)
                {
                    MathStanddev = -1;
                    return MathStanddev;
                }
            }
            try
            {
                int count = mathData.Count;
                for (int i = 0; i < count; i++)
                {
                    MathStanddev += Math.Pow((mathData[i] - mathMean) 2.0);
                }
                MathStanddev /= count;
           

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

     文件       7168  2013-08-22 09:18  MathExtend\MathExtend\bin\Debug\MathExtend.dll

     文件      19968  2013-08-22 09:18  MathExtend\MathExtend\bin\Debug\MathExtend.pdb

     文件       5051  2013-08-13 13:36  MathExtend\MathExtend\bin\Debug\MathExtend.xml

     文件     490088  2013-08-08 10:31  MathExtend\MathExtend\bin\Release\C#标准正太分布函数库.rar

     文件       6656  2013-08-13 13:36  MathExtend\MathExtend\bin\Release\MathExtend.dll

     文件      17920  2013-08-13 13:36  MathExtend\MathExtend\bin\Release\MathExtend.pdb

     文件       5051  2013-08-13 13:36  MathExtend\MathExtend\bin\Release\MathExtend.xml

     文件     502405  2013-08-08 10:31  MathExtend\MathExtend\bin\Release\NormDistDemo.rar

     文件      10896  2013-08-19 09:22  MathExtend\MathExtend\MathExtend.cs

     文件       2338  2013-08-06 10:21  MathExtend\MathExtend\MathExtend.csproj

     文件       5850  2013-08-22 09:18  MathExtend\MathExtend\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache

     文件        506  2013-08-22 09:18  MathExtend\MathExtend\obj\Debug\MathExtend.csproj.FileListAbsolute.txt

     文件       7168  2013-08-22 09:18  MathExtend\MathExtend\obj\Debug\MathExtend.dll

     文件      19968  2013-08-22 09:18  MathExtend\MathExtend\obj\Debug\MathExtend.pdb

     文件       5854  2013-08-13 13:36  MathExtend\MathExtend\obj\Release\DesignTimeResolveAssemblyReferencesInput.cache

     文件        616  2013-08-13 13:36  MathExtend\MathExtend\obj\Release\MathExtend.csproj.FileListAbsolute.txt

     文件       6656  2013-08-13 13:36  MathExtend\MathExtend\obj\Release\MathExtend.dll

     文件      17920  2013-08-13 13:36  MathExtend\MathExtend\obj\Release\MathExtend.pdb

     文件       1352  2013-08-06 08:53  MathExtend\MathExtend\Properties\AssemblyInfo.cs

     文件        920  2013-08-06 08:53  MathExtend\MathExtend.sln

    ..A..H.     18432  2013-08-07 08:52  MathExtend\MathExtend.suo

     目录          0  2013-08-06 08:53  MathExtend\MathExtend\obj\Debug\TempPE

     目录          0  2013-08-06 10:05  MathExtend\MathExtend\obj\Release\TempPE

     目录          0  2013-08-22 09:18  MathExtend\MathExtend\bin\Debug

     目录          0  2013-08-13 13:36  MathExtend\MathExtend\bin\Release

     目录          0  2013-08-22 09:18  MathExtend\MathExtend\obj\Debug

     目录          0  2013-08-13 13:36  MathExtend\MathExtend\obj\Release

     目录          0  2013-08-06 08:54  MathExtend\MathExtend\bin

     目录          0  2013-08-06 10:05  MathExtend\MathExtend\obj

     目录          0  2013-08-06 08:53  MathExtend\MathExtend\Properties

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

评论

共有 条评论