Aide à dessiner une ellipse de confiance

8

La fonction ellipse de car packages demande un radiusparamètre. Dans l'aide dit que c'est le "rayon de cercle générant l'ellipse". Pourriez-vous me dire de quel cercle s'agit-il?

Merci beaucoup

George Dontas
la source
4
Je pense que si l'ellipsoïde est de la forme , alors g devrait être donné comme rayon. (xx¯)TS1(xx¯)=g2
George Dontas
George a raison.
morosité

Réponses:

3

Une ellipse peut être paramétrée comme l'image affine d'un cercle donné. Si nous considérons le cercle unitaire:

x=acos(t)
y=bsin(t)
ellipse(center, shape, radius, log="", center.pch=19, center.cex=1.5, 
  segments=51, add=TRUE, xlab="", ylab="", 
   col=palette()[2], lwd=2, fill=FALSE, fill.alpha=0.3, grid=TRUE, ...)

Vous pouvez remarquer que la ellipsefonction demande le centre et le rayon du cercle, ainsi que la matrice de covariance, ce qui équivaut à donner les paramètres de la transformation affine.

center  2-element vector with coordinates of center of ellipse.
shape   2 * 2 shape (or covariance) matrix.
radius  radius of circle generating the ellipse.

Jetons un œil à la carfonction package:

ellipse <- t(center + radius * t(unit.circle %*% chol(shape)))

Le radiusparamètre peut être défini sur 1 si vous souhaitez utiliser la matrice de covariance directement pour le shapeparamètre. Je crois qu'il a été introduit pour aider les gens à utiliser des matrices normalisées à la place s'ils le préfèrent.


Edit: Comme mentionné dans le commentaire de whuber, les deux ellipses ci-dessous sont les mêmes.

> library(car)
> s=matrix(c(1,0,0,1), nrow=2, ncol=2)
> plot(0, 0, xlim=c(-5,5), ylim=c(-5,5))
> ellipse(c(0,0), 4*s, 1)
> ellipse(c(0,0), s, 2)
Wok
la source
1
En fait, la transformation affine du cercle unitaire à l'ellipse est donnée par la racine carrée du paramètre "forme". Par exemple, la matrice {{4,0}, {0,4}} ne fera que doubler la taille du cercle.
whuber