4
$\begingroup$

I'm exploring the properties of log-normal distributions and came across a formula (e.g., here) stating that the coefficient of variation (CV) of a variable $X$ following a log-normal distribution is $\sqrt{\exp(\sigma^2) - 1}$​, where $\sigma$ is the SD of $\log X$. However, in my simulation, the empirical CVs calculated don't align well with this theoretical expectation.

Here's the R code for my simulation:

nsim <- 1000            # Number of simulation iterations
nobs <- 100             # Number of observations per iteration
true_mu <- 4            # True mean of the normal distribution 
true_sigma <- 2         # True SD
cv_obs <- numeric(nsim)
set.seed(1)
for (i in 1:nsim) {
  # Randomly draw 100 values from a normal distribution with the mean of 4 and the SD of 2, and then exponentiate it to turn it into a variable following a log-normal distribution.
  x <- exp(rnorm(nobs, mean = true_mu, sd = true_sigma))
  # Calculate the CV of the variable x that follows a log-normal distribution.
  cv_obs[i] <- sd(x)/mean(x)  
}

# Expected value of the CV
cv_expected <- sqrt(exp(true_sigma^2) - 1)
# Proportion of the empirical CVs that exceed the expected value.
mean(cv_obs > cv_expected) # 0.007
# --> Only 0.7% of the empirical CVs exceed the expected value

# Figure below
hist(cv_obs)
abline(v = cv_expected, col = "red")

enter image description here

The expected CV, based on the formula, appears towards the edge of the empirical distribution of the CVs from my simulation. What might be causing this discrepancy? What am I missing?

$\endgroup$
2
  • 1
    $\begingroup$ For $\sigma=2$ the log-normal is extremely skewed and when large values in the right tail is missing in the sample, the sample sd will be strongly underestimated, more so than the sample mean. Hence, the sample CV also underestimate the theoretical CV. If you either increase the sample size or decrease $\sigma$, things work more as expected. $\endgroup$ Commented Dec 10, 2023 at 10:21
  • $\begingroup$ Thank you for your intuitive explanation. By increasing sample size and decreasing $\sigma$, empirical CVs indeed approached the expected CV. $\endgroup$ Commented Dec 10, 2023 at 15:05

1 Answer 1

8
$\begingroup$

You might be missing that the sample sd is limited by $\sqrt{n}$ times the sample mean when the values are non-negative; this occurs when there's a single extreme outlier.

Consider, for example, $n-1$ zero-values and one larger value (say at 1, for simplicity, since it doesn't matter how large it is).

Your $n$ is only 100, so you won't see a sample CV above 10. If you try sample sizes of $9$ instead, you'll see your CV stays below $3$ and so on.

In short, sample CV (as an estimator of population CV) is biased downward for distributions on the positive half-line with heavy right tails. As you increase the sample size the impact of this bound is lowered, but it still has an effect compared to the infinite population.

$\endgroup$
5
  • 2
    $\begingroup$ Some references on the sample size-related bounds of the coefficient of variation are given within journals.sagepub.com/doi/pdf/10.1177/1536867X1001000311 $\endgroup$
    – Nick Cox
    Commented Dec 10, 2023 at 10:09
  • $\begingroup$ Thank you for your response. I was indeed unaware of the relationship between sample size and the bias in SD estimates when the variable only takes non-negative values. $\endgroup$ Commented Dec 10, 2023 at 15:02
  • $\begingroup$ @NickCox Thanks, much appreciated. A small warning for readers of the excellent article, because it would be easy to miss if you're just looking for the CV results -- carefully note that the "$s$" being discussed in the article there is $s_n$, the square root of the $n$-denominator version of variance. The $\sqrt{n-1}$ bound for CV given in Nick's article is completely consistent with my $\sqrt{n}$, since I was using the ordinary Bessel-corrected s.d. It makes complete sense to use $s_n$ for many of the bounds being considered. $\endgroup$
    – Glen_b
    Commented Dec 10, 2023 at 17:05
  • 1
    $\begingroup$ @Akira The distribution you're looking at is quite skewed (the mean is at the 84th percentile for example and the tail is pretty heavy), so you come close to that upper bound of 10 every so often $\endgroup$
    – Glen_b
    Commented Dec 10, 2023 at 17:13
  • 1
    $\begingroup$ Incidentally a plot of the sample's CV against the sample mean for a sufficiently large number of samples of size 100 very clearly hints at the existence of a bound; say, 30000 or 100000; you can use fewer samples if you try a smaller sample size or a larger value for $\sigma$. I'd probably use a log-log scale but it works fine without as well. $\endgroup$
    – Glen_b
    Commented Dec 10, 2023 at 18:05

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.