1 モンテカルロ法

  • モンテカルロ法は、確率的な手法であり、乱数を用いて数値計算を行う手法である。

  • 計量経済学では、標準誤差を計算するためのブートストラップ法や、モンテカルロシミュレーションを用いて、パラメータの推定値を計算することがある。

  • 『私たちのR』の「30 モンテカルロ・シミュレーション」を参考に、Rでモンテカルロ法を実装する方法を説明する。

2 サイコロの例

  • sample関数を用いて、1:6の数字から数値を100回抽出する。
set.seed(123)
# N=100の空のデータを生成
df <- data.frame((matrix(rep(1, 100), nrow=100)))
# 変数名をidに変更
colnames(df) <- c("id")

# idに1から100までの連番を振る
df$id <- seq(1, 100, 1)
# 1〜6の乱数を100回抽出
df$x <- sample(1:6, 100, replace = TRUE)
# サイコロの目の出現回数を計算
barplot(table(df$x), col = "skyblue", main = "sample(1:6, 100, replace = TRUE)", xlab = "x", ylab = "Frequency")

# サイコロの目の出現回数を計算
mean(df$x)
## [1] 3.53

3 ブートストラップ法の例

  • ブートストラップ法は、標本から復元抽出を行い、標本の分布を推定する手法である。
  • 以下の例では、rnorm関数を用いて、正規分布から乱数を100回抽出し、その平均値を計算する。

3.1 通常の平均値の差の検定

set.seed(123)

# Data1の生成: 平均0.7, 標準偏差1の正規分布から100個のデータを生成
Data1 <- rnorm(100, 0.7, 1)
# Data2の生成: 平均0.9, 標準偏差1の正規分布から100個のデータを生成
Data2 <- rnorm(100, 0.9, 1)


# 平均値の差
delta <- mean(Data1) - mean(Data2)
delta
## [1] -0.002047293
# t検定
ttest_result <- t.test(Data1, Data2, var.equal = TRUE)
ttest_result
## 
##  Two Sample t-test
## 
## data:  Data1 and Data2
## t = -0.015396, df = 198, p-value = 0.9877
## alternative hypothesis: true difference in means is not equal to 0
## 95 percent confidence interval:
##  -0.2642808  0.2601862
## sample estimates:
## mean of x mean of y 
## 0.7904059 0.7924532
# 平均値の差の標準誤差
se <- ttest_result$stderr
se
## [1] 0.1329773
  • 平均値の差の標準誤差は、0.1329773である。

3.2 ブートストラップ法による平均値の差の検定

set.seed(123)
# 試行回数
n_trials   <- 10000
# 結果を格納するベクトル
Result_vec <- rep(NA, n_trials)

# ブートストラップ法
for (i in 1:n_trials) {
    # Data1から100個のデータを復元抽出
    Sample1 <- sample(Data1, 100, replace = TRUE)
    # Data2から100個のデータを復元抽出
    Sample2 <- sample(Data2, 100, replace = TRUE)
    # 平均値の差を計算
    Result_vec[i] <- mean(Sample1) - mean(Sample2)
}

# ブートストラップ推定量 (平均値の差分の平均値)
boot_delta <- mean(Result_vec)
boot_delta
## [1] -0.004519002
# ブートストラップ推定量の標準偏差
boot_se <- sd(Result_vec) 
boot_se
## [1] 0.1335441
  • ブートストラップ法による平均値の差の標準誤差は、0.1331であり、通常の平均値の差の標準誤差とほぼ同じである。

参考文献