【问题标题】:Cumulative Normal Distribution function in objective C目标 C 中的累积正态分布函数
【发布时间】:2011-02-16 16:12:02
【问题描述】:

任何人都知道其许可证与非免费 iPhone 应用程序兼容的良好实现?

正如这个问题所建议的,Boost 看起来非常棒。但据我所知,它仅在 C++ 中可用。

Cumulative Normal Distribution Function in C/C++

【问题讨论】:

    标签: iphone statistics


    【解决方案1】:

    不需要任何花哨的东西。任何具有良好 C99 数学库的平台(如 iphone)都已经拥有您需要的一切——特别是 erfc 函数,这是一个轻微的变体:

    #import <math.h>
    
    double cumulativeNormal(double x) {
        return 0.5 * erfc(-x * M_SQRT1_2);
    }
    

    请注意,这是针对标准正态分布(即均值 = 0,方差 = 1),您需要使用适当的缩放比例 - 因此对于某些均值和方差,它将是:

    return 0.5 * erfc(((mean - x)/sqrt(variance)) * M_SQRT1_2);
    

    如果您不需要双精度,请将双精度值更改为浮点数,使用 erfcf 函数,并将文字更改为单精度文字。

    请记住,Objective-C 是对 C 的极轻扩展。每个 C 函数都是 Objective-C 函数,不需要包装或其他恶作剧。

    【讨论】:

      【解决方案2】:

      所以你特别想要一个objective-c 解决方案,对吗?因为,以防万一您还没有意识到,您可以使用C++ libraries within your project

      【讨论】:

      • 哇,我不知道,我希望我能接受这两个答案,因为两者都很棒。
      • 不用担心。斯蒂芬提供了一个原始答案,我只是链接到另一个可能对你有帮助的问题:)
      猜你喜欢
      • 2013-01-28
      • 2014-05-28
      • 1970-01-01
      • 1970-01-01
      • 2019-07-23
      • 2010-10-01
      • 1970-01-01
      • 2015-10-16
      • 1970-01-01
      相关资源
      最近更新 更多