小编Chr*_*oer的帖子

可选参数的Julia约定

假设我有一个功能,f(x,y)y参数是可选的.设置y为可选参数的首选方法是什么?一个适合我的选择:

function f(x, y=nothing)
    # do stuff 
    if y == nothing
        # do stuff
    else
        # do stuff
    end
    # do stuff
end
Run Code Online (Sandbox Code Playgroud)

但这是首选方式吗?我无法将y单个默认值设置为在计算中使用,因为有许多计算在y没有任何情况时以不同方式完成.我也可以只有单独的功能f(x),f(x,y)但这似乎是太多的代码重复.

julia

6
推荐指数
1
解决办法
2431
查看次数

生成一组大小为N的整数的最佳方法,如同正态分布一样,给定均值和标准.偏差

我正在寻找一种方法来生成一组具有指定均值和标准的整数.偏差.

使用随机库,可以生成一组以高斯方式分布的随机双打,这看起来像这样:

#include <tr1/random>

std::tr1::normal_distribution<double> normal(mean, stdDev);
std::tr1::ranlux64_base_01 eng;
eng.seed(1000);
for (int i = 0; i < N; i++)
{
    gaussiannums[i] = normal(eng);
}
Run Code Online (Sandbox Code Playgroud)

但是,对于我的应用程序,我需要整数而不是双精度.所以我的问题是,你如何生成相当于上面但是整数而不是双打?一种可能的路径是以某种方式将双打转换为整数,但我不知道随机库如何工作以了解是否可以以真正保留钟形和均值/标准的方式完成.偏差.

我应该提到这里的目标不是随机性,因为它是获得一组特定大小的整数,具有正确的均值和标准.偏差.

理想情况下,我还想指定可以产生的最小值和最大值,但即使是双打也没有找到任何方法,所以对此也提出任何建议.

c++ statistics normal-distribution gaussian

3
推荐指数
1
解决办法
1114
查看次数

标签 统计

c++ ×1

gaussian ×1

julia ×1

normal-distribution ×1

statistics ×1