1
$\begingroup$

Hi I have the following problem. I draw a sample of a multivariate t-distribution with some fixed covariance matrix, so that the realizations are correlated, and $\nu=4$. Now I repeat this $n$ times, always with the same covariance matrix and the same $\nu$. I normalize each sample to mean 0 and standard deviation 1 and look at the histogram of all samples, it is a Gaussian distribution.

I somehow expected a t-distribution with the same degrees of freedom $\nu=4$. Why do I see a Gaussian distribution?

PS: I don't think the code is the problem since I already asked in a forum and it seems correct.

Thanks.

$\endgroup$
7
  • $\begingroup$ Yes, but when I compare with a Gaussian and a student-t distribution, I can see that the histogram is clearly Gaussian. $\endgroup$
    – ani
    Commented May 4, 2015 at 11:21
  • $\begingroup$ Here is my question, I work with Mathematica: mathematica.stackexchange.com/questions/81440/… $\endgroup$
    – ani
    Commented May 4, 2015 at 11:57
  • $\begingroup$ And this is the multivariate t distribution which I use en.wikipedia.org/wiki/Multivariate_t-distribution $\endgroup$
    – ani
    Commented May 4, 2015 at 11:57
  • $\begingroup$ did you try to plot the un-normalised samples? $\endgroup$
    – Xi'an
    Commented May 4, 2015 at 12:10
  • 3
    $\begingroup$ Posting the same question on several SO sites is a very bad practice. It wastes the precious resource of people with expertise, and it confuses the readers / newcomers on the site. Since your question is statistical in nature, I'd say you would want to delete the Mathematica.SE question. $\endgroup$
    – StasK
    Commented May 4, 2015 at 13:38

3 Answers 3

2
$\begingroup$

Your normalizing the samples to mean zero and variance one kills all of the heavy tail properties of the $t$-distribution. Since $T_\nu = z/v_\nu, z\sim N(0,1) \perp v_\nu \sim \chi^2_\nu$, your normalization of the scale by 1 annihilates $v_\nu$ forcing it to be one instead of a random quantity. The deviations from zero are due to the $z$, but you force them to have the variance of exactly one. As a matter of fact, I suspect that your normalization produces lower variance than one... probably 299/300 or 298/300, although you are not going to notice it on a histogram.

That the code runs (i.e., does not crash and does not produce errors) does not mean it is correct in the sense that it solves your problem... which you have not stated, anyway.

$\endgroup$
2
$\begingroup$

Here is an experiment that exhibits a clear lack of fit by a Gaussian density for a simulated t sample:

library(mvtnorm)
x=rmvt(1e4,sigma=matrix(c(1,.7,.7,1),nrow=2),df=4)
hist(x[,1]/sd(x[,1]),nclass=123,col="wheat2",prob=TRUE)
curve(dnorm,add=TRUE,lwd=2,col="sienna2")

However, since there are different definitions for the multivariate t, it may also be that you use one for which the marginals are not t's...

enter image description here

$\endgroup$
1
  • $\begingroup$ Ok I am confused now, then I must do something wrong, I work with Mathematica actually. Above I posted the link to my question in a Mathematica forum. I have to check it again. $\endgroup$
    – ani
    Commented May 4, 2015 at 12:05
1
$\begingroup$

Because you get multivariate Student t as the fraction of the normal vector and a chi-squared random variable. So, of course, the histogram of entries of the vector will be normal, but for every simulation, it will be different normal, depending on what the chi-squared random variable shows you. If you normalize, chi-squared gets cancelled and it will just be standard normal all the time.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.