在C ++中,我想创建一个函数,它将数字向量作为输入并输出CDF值的向量。以下是我的尝试:
#include <boost/math/distributions/lognormal.hpp>
vector<double> lognormCDF(vector<double>& input, double sigma)
{
vector<double> output(input.size());
boost::math::lognormal lognormDistr(0, sigma);
for (size_t i = 0; i != input.size(); ++i)
{
output[i] = boost::math::cdf(lognormDistr, input[i]);
}
return output;
}
以上代码有效,但我需要它更快。
以下是有关如何使用该功能的一些背景信息:
我只是想知道是否有更快的方法来实现上述目标?
我也想知道我是否对输入向量进行排序,是否有更快的方法来计算对数正态CDF输出向量?