資源簡介
前幾天出了個測試版,然后自己發現公式錯了,把方差誤認為是標準差了。其實實現很簡單,不過發布資源后被某個朋友批判了下,現在發出源碼,大家有興趣就看看,沒興趣就無視。

代碼片段和文件信息
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?????????????????{
????????????????????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?????????????????{
????????????????????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.xm
?????文件?????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.xm
?????文件?????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個文件信息
評論
共有 條評論