最初に固有値を計算することにより、共分散行列から面積を直接計算できます。
取得したい信頼係数で分散/固有値をスケーリングする必要があります。
このスレッドはとても役に立ちます
set.seed(1234)
dat <- data.frame(x = rnorm(1:1000), y = rnorm(1:1000))
cov_dat <- cov(dat) # covariance matrix
eig_dat <- eigen(cov(dat))$values #eigenvalues of covariance matrix
vec <- sqrt(5.991* eig_dat) # half the length of major and minor axis for the 95% confidence ellipse
pi * vec[1] * vec[2]
#> [1] 18.38858
2020-02-27 作成者reprex パッケージ(v0.3.0)
この特定のケースでは、共分散はゼロであり、固有値は多かれ少なかれ変数の分散になります。したがって、計算には分散のみを使用できます。- 両方とも正規分布しているとします。
set.seed(1234)
data <- data.frame(x = rnorm(1:1000), y = rnorm(1:1000))
pi * 5.991 * sd(data$x) * sd(data$y) # factor for 95% confidence = 5.991
#> [1] 18.41814
2020-02-27 作成者reprex パッケージ(v0.3.0)
計算された値は、ユーザー eipi10 の回答とは異なります。これは、内部の計算が異なり、基になる分布の仮定が異なるためである可能性があります。このスレッドを参照してください。