sf.test.RdPerforms the Shapiro-Francia test for the composite hypothesis of normality, see e.g. Thode (2002, Sec. 2.3.2).
sf.test(x)The test statistic of the Shapiro-Francia test is simply the squared correlation between the ordered sample values and the (approximated) expected ordered quantiles from the standard normal distribution. The p-value is computed from the formula given by Royston (1993).
A list with class “htest” containing the following components:
the value of the Shapiro-Francia statistic.
the p-value for the test.
the character string “Shapiro-Francia normality test”.
a character string giving the name(s) of the data.
Royston, P. (1993): A pocket-calculator algorithm for the Shapiro-Francia test for non-normality: an application to medicine. Statistics in Medicine, 12, 181–184.
Thode Jr., H.C. (2002): Testing for Normality. Marcel Dekker, New York.
The Shapiro-Francia test is known to perform well,
see also the comments by Royston (1993). The expected ordered quantiles
from the standard normal distribution are approximated by
qnorm(ppoints(x, a = 3/8)), being slightly different from the approximation
qnorm(ppoints(x, a = 1/2)) used for the normal quantile-quantile plot by
qqnorm for sample sizes greater than 10.
shapiro.test for performing the Shapiro-Wilk test for normality.
ad.test, cvm.test,
lillie.test, pearson.test for performing further tests for normality.
qqnorm for producing a normal quantile-quantile plot.
sf.test(rnorm(100, mean = 5, sd = 3))
#>
#> Shapiro-Francia normality test
#>
#> data: rnorm(100, mean = 5, sd = 3)
#> W = 0.98607, p-value = 0.3198
#>
sf.test(runif(100, min = 2, max = 4))
#>
#> Shapiro-Francia normality test
#>
#> data: runif(100, min = 2, max = 4)
#> W = 0.96539, p-value = 0.01168
#>