The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.

Nonparametric Tests

Empirical Likelihood Tests

Empirical likelihood is a nonparametric method of inference based on a data driven likelihood ratio function. Like the bootstrap and jackknife, empirical likelihood inference does not require us to specify a family of distributions for the data. Like parametric likelihood methods, empirical likelihood makes an automatic determination of the shape of confidence regions […] and has very favorable asymptotic power properties. It can be thought of as a bootstrap that does not resample and as a likelihood without parametric assumptions. (Owen 2001)

Tests For Mu

One sample and one-way tests are implemented. Note the distribution does not need to be symmetrical and less data is needed.

library(LRTesteR)
library(statmod)

set.seed(1)
x <- rinvgauss(n = 30, mean = 2.25, dispersion = 2)
empirical_mu_one_sample(x = x, mu = 1, alternative = "two.sided")
#> Log Likelihood Statistic: 4.36
#> p value: 0.037
#> Confidence Level: 95%
#> Confidence Interval: (1.028, 2.486)

The one way test does not require nuisance parameters or sample size to be equal.

set.seed(1)
x <- c(
  rinvgauss(n = 35, mean = 1, dispersion = 1),
  rinvgauss(n = 40, mean = 2, dispersion = 3),
  rinvgauss(n = 45, mean = 3, dispersion = 5)
)
fctr <- c(rep(1, 35), rep(2, 40), rep(3, 45))
fctr <- factor(fctr, levels = c("1", "2", "3"))
empirical_mu_one_way(x = x, fctr = fctr, conf.level = .95)
#> Log Likelihood Statistic: 50.89
#> p value: 0
#> Confidence Level Of Set: 95%
#> Individual Confidence Level: 98.3%
#> Confidence Interval For Group 1: (0.759, 1.688)
#> Confidence Interval For Group 2: (1.472, 5.16)
#> Confidence Interval For Group 3: (2.481, 14.701)

Tests For A Quantile

Any quantile can be tested. In this example, the null hypothesis is the median (Q equal to .50) is 0 (value argument).

set.seed(2)
x <- rnorm(n = 30, mean = 0, sd = 1)
empirical_quantile_one_sample(x = x, Q = .50, value = 0, alternative = "two.sided")
#> Log Likelihood Statistic: 2.16
#> p value: 0.142
#> Confidence Level: 95%
#> Confidence Interval: (-0.24, 0.792)

Other quantiles can be tested as well.

# Q1
empirical_quantile_one_sample(x = x, Q = .25, value = 0, alternative = "two.sided")
#> Log Likelihood Statistic: 2
#> p value: 0.157
#> Confidence Level: 95%
#> Confidence Interval: (-1.2, 0.036)
# Q3
empirical_quantile_one_sample(x = x, Q = .75, value = 0, alternative = "two.sided")
#> Log Likelihood Statistic: 19.58
#> p value: 0
#> Confidence Level: 95%
#> Confidence Interval: (0.418, 1.782)

In one-way analysis, equality of a quantile is tested. Here, a common median (Q equal to .50) is tested.

set.seed(1)
x <- c(
  rnorm(n = 35, mean = 1, sd = 1),
  rnorm(n = 40, mean = 2, sd = 1.25),
  rnorm(n = 45, mean = 3, sd = 1.5)
)
fctr <- c(rep(1, 35), rep(2, 40), rep(3, 45))
fctr <- factor(fctr, levels = c("1", "2", "3"))
empirical_quantile_one_way(x = x, Q = .50, fctr = fctr)
#> Log Likelihood Statistic: 39.74
#> p value: 0
#> Confidence Level Of Set: 95%
#> Individual Confidence Level: 98.3%
#> Confidence Interval For Group 1: (0.695, 1.594)
#> Confidence Interval For Group 2: (1.507, 2.712)
#> Confidence Interval For Group 3: (2.308, 3.576)

Note sample size does not have to be equal.

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.