c_cpp Rcpp min,max

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c_cpp Rcpp min,max相关的知识,希望对你有一定的参考价值。

// [[Rcpp::plugins(cpp11)]]
#include <Rcpp.h>

using namespace Rcpp;
using std::begin;
using std::end;
using std::next;

// [[Rcpp::export]]
double rcpp_min(NumericVector x) {
    double out = x.at(0);

    for (auto it = next(begin(x)); it != end(x); ++it) {  
        if (*it < out) {
            out = *it;
        }
    }

    return out;
}

// [[Rcpp::export]]
double rcpp_max(NumericVector x) {
    double out = x.at(0);

    for (auto it = next(begin(x)); it != end(x); ++it) {
        if (*it > out) {
            out = *it;
        }
    }

    return out;
}

/*** R
r_vector <- 1:20

rcpp_min(r_vector)
#> [1] 1

rcpp_max(r_vector)
#> 20
*/

以上是关于c_cpp Rcpp min,max的主要内容,如果未能解决你的问题,请参考以下文章

c_cpp Cpp / C ++ min,max

c_cpp #cpp#min_max2

c_cpp Rcpp独特的套装

c_cpp Rcpp从头开始独特设定(ish)

Rcpp 程序中的最小值和最大值

c_cpp Min Coins