첨부 실행 코드는 나눔고딕코딩 폰트를 사용합니다.
본 블로그는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 블로그 콘텐츠 향상을 위해 쓰여집니다.

728x90
반응형
728x170
using System;
using System.Collections.Generic;

#region 정규 분포 정렬 리스트 구하기 - GetNormalDistributionSortedList(intervalList, average, standardDeviation)

/// <summary>
/// 정규 분포 정렬 리스트 구하기
/// </summary>
/// <param name="intervalList">구간 리스트</param>
/// <param name="average">평균</param>
/// <param name="standardDeviation">표준 편차</param>
/// <returns>정규 분포 정렬 리스트</returns>
public static SortedList<double, double> GetNormalDistributionSortedList(List<double> intervalList, double average, double standardDeviation)
{
    SortedList<double, double> normalDistributionSortedList = new SortedList<double, double>();

    if(intervalList == null || intervalList.Count == 0)
    {
        return normalDistributionSortedList;
    }

    foreach(double interval in intervalList)
    {
        normalDistributionSortedList.Add(interval, 0d);
    }

    double constantA = 1d / (standardDeviation * Math.Sqrt(2d * Math.PI));

    foreach(double interval in intervalList)
    {
        double normalDistribution = constantA * Math.Pow(Math.E, -0.5d * Math.Pow((interval - average) / standardDeviation, 2));

        normalDistributionSortedList[interval] = normalDistribution;
    }

    return normalDistributionSortedList;
}

#endregion
728x90
반응형
그리드형
Posted by 사용자 icodebroker
TAG , ,

댓글을 달아 주세요