| Title: | Self-Similarity Test for Normality |
|---|---|
| Description: | Implements the Self-Similarity Test for Normality (SSTN), a new statistical test designed to assess whether a given sample originates from a normal distribution. The method exploits the self-similarity property of the normal characteristic function by iteratively transforming and comparing standardized empirical characteristic functions. The null distribution of the test statistic is obtained via Monte Carlo simulation. Details of the methodology are described in Anarat and Schwender (2026), "A test for normality based on self-similarity", <doi:10.48550/arXiv.2604.03810>. |
| Authors: | Akin Anarat [aut, cre] |
| Maintainer: | Akin Anarat <[email protected]> |
| License: | GPL-3 |
| Version: | 1.0.1 |
| Built: | 2026-05-11 09:44:15 UTC |
| Source: | https://github.com/cran/sstn |
The SSTN is a statistical test for assessing whether a given sample originates from a normal distribution. It is based on the iterative application of the empirical characteristic function and comparing these estimated characteristic functions. A Monte Carlo procedure is used to obtain the empirical distribution of the test statistic under the null hypothesis.
sstn(x, verbose = FALSE)sstn(x, verbose = FALSE)
x |
Numeric vector of observations |
verbose |
Logical. If TRUE (default), prints a summary of the test results
including the number of summands, test statistic, and |
An invisible list with the following components:
test.statistic |
Numeric. The observed value of the SSTN test statistic. |
method |
Character string indicating whether the asymptotic or the finite-sample null distribution was used. |
p.value |
Numeric. The |
Akin Anarat [email protected]
Anarat, A. and Schwender, H. (2026). A test for normality based on self-similarity. arXiv preprint https://doi.org/10.48550/arXiv.2604.03810.
set.seed(123) # Sample from standard normal (null hypothesis true) x <- rnorm(100) res <- sstn(x) res$p.value # Sample from Gamma distribution (null hypothesis false) y <- rgamma(100, 1) res2 <- sstn(y) res2$p.valueset.seed(123) # Sample from standard normal (null hypothesis true) x <- rnorm(100) res <- sstn(x) res$p.value # Sample from Gamma distribution (null hypothesis false) y <- rgamma(100, 1) res2 <- sstn(y) res2$p.value