52 size_t n = pvalues.size();
53 vector<PValue_> sortedPValues;
54 for (
size_t i = 0; i < n; ++i)
56 sortedPValues.push_back(
PValue_(pvalues[i], i));
58 sort(sortedPValues.begin(), sortedPValues.end());
59 vector<double> fdr(pvalues.size());
60 for (
size_t i = 0; i < sortedPValues.size(); ++i)
62 fdr[sortedPValues[i].index_] = sortedPValues[i].pvalue_ *
static_cast<double>(n) / (
static_cast<double>(sortedPValues[i].index_ + 1));