Compute Skewness and Kurtosis
skewness(x, na.rm = TRUE, type = "2", ...)kurtosis(x, na.rm = TRUE, type = "2", ...)
A numeric vector or data.frame.
Remove missing values.
Type of algorithm for computing skewness. May be one of 1
(or "1"
, "I"
or "classic"
), 2
(or "2"
, "II"
or "SPSS"
or "SAS"
) or 3
(or "3"
, "III"
or "Minitab"
). See 'Details'.
Arguments passed to or from other methods.
Values of skewness or kurtosis.
Symmetric distributions have a skewness
around zero, while
a negative skewness values indicates a "left-skewed" distribution, and a
positive skewness values indicates a "right-skewed" distribution. Examples
for the relationship of skewness and distributions are:
Normal distribution (and other symmetric distribution) has a skewness of 0
Half-normal distribution has a skewness just below 1
Exponential distribution has a skewness of 2
Lognormal distribution can have a skewness of any positive value, depending on its parameters
skewness()
supports three different methods for estimating skewness, as discussed in Joanes and Gill (1988):
Type "1" is the "classical" method, which is g1 = (sum((x - mean(x))^3) / n) / (sum((x - mean(x))^2) / n)^1.5
Type "2" first calculates the type-1 skewness, than adjusts the result: G1 = g1 * sqrt(n * (n - 1)) / (n - 2)
. This is what SAS and SPSS usually return
Type "3" first calculates the type-1 skewness, than adjusts the result: b1 = g1 * ((1 - 1 / n))^1.5
. This is what Minitab usually returns.
The kurtosis
is a measure of "tailedness" of a distribution. A distribution
with a kurtosis values of about zero is called "mesokurtic". A kurtosis value
larger than zero indicates a "leptokurtic" distribution with fatter tails.
A kurtosis value below zero indicates a "platykurtic" distribution with thinner
tails (https://en.wikipedia.org/wiki/Kurtosis).
kurtosis()
supports three different methods for estimating kurtosis, as discussed in Joanes and Gill (1988):
Type "1" is the "classical" method, which is g2 = n * sum((x - mean(x))^4) / (sum((x - mean(x))^2)^2) - 3
.
Type "2" first calculates the type-1 kurtosis, than adjusts the result: G2 = ((n + 1) * g2 + 6) * (n - 1)/((n - 2) * (n - 3))
. This is what SAS and SPSS usually return
Type "3" first calculates the type-1 kurtosis, than adjusts the result: b2 = (g2 + 3) * (1 - 1 / n)^2 - 3
. This is what Minitab usually returns.
D. N. Joanes and C. A. Gill (1998). Comparing measures of sample skewness and kurtosis. The Statistician, 47, 183<U+2013>189.
# NOT RUN {
skewness(rnorm(1000))
kurtosis(rnorm(1000))
# }
Run the code above in your browser using DataLab