,可以通过以下步骤实现:
#include <Rcpp.h>
using namespace Rcpp;
// [[Rcpp::export]]
NumericVector removeNA(NumericVector vec) {
NumericVector result;
for (int i = 0; i < vec.size(); i++) {
if (!NumericVector::is_na(vec[i])) {
result.push_back(vec[i]);
}
}
return result;
}
在R中调用这个函数的示例代码如下:
# 导入Rcpp库
library(Rcpp)
# 调用C++函数
vec <- c(1, 2, NA, 4, NA, 6)
new_vec <- removeNA(vec)
print(new_vec)
这样就可以从Rcpp中的std向量中检测并省略NA值了。
推荐的腾讯云相关产品:腾讯云云服务器(CVM),产品介绍链接地址:https://cloud.tencent.com/product/cvm
领取专属 10元无门槛券
手把手带您无忧上云