My Notes

統計学とかR(R言語)とかPython3の覚え書きとか走り書きとか。 座右の銘にしたい: All work and no play makes Jack a dull boy.

Rcppで標本分散を求める自作関数を作成する

Rcppコード

#include <Rcpp.h>
using namespace Rcpp;


// [[Rcpp::export]]
double rcpp_varp(NumericVector x)
{
    // あまりC++な書き方ではないと思うが、変数に代入していくと値がおかしくなるので...。
    // (勉強不足)。
    return sum(pow(x - mean(x), 2)) / x.length();
}

R Console

> library(Rcpp)
> Rcpp::sourceCpp("rcpp_varp.cpp")
> v <- c(10, 13, 8, 15, 8)
> v
[1] 10 13  8 15  8
> rcpp_varp(v)
[1] 7.76

参考文献

パーフェクトR

パーフェクトR