
General Linear Hypotheses for islasso Models
anova.islasso.Rd
Tests general linear hypotheses and computes confidence intervals for linear combinations of coefficients
from a fitted islasso
model.
Usage
# S3 method for class 'islasso'
anova(object, A, b = NULL, ci, ...)
Arguments
- object
A fitted model object of class
"islasso"
.- A
Hypothesis specification. Either:
A numeric matrix or vector with each row specifying a linear combination of coefficients,
Or a character vector with symbolic expressions (e.g.
"X1 + X2 = 3"
).
- b
Right-hand side vector for the null hypotheses
A %*% beta = b
. If omitted, defaults to zeros.- ci
Optional 2-column matrix of confidence intervals for coefficients.
- ...
Currently unused.
Value
An object of class "anova.islasso"
containing:
- Estimate
Linear combination estimates
- SE
Standard errors
- Wald
Wald statistics
- p-value
Associated p-values
Details
The method tests the null hypothesis \(H_0: A \beta = b\), where \(A\) and \(b\) define a linear constraint on model coefficients.
Symbolic expressions support natural syntax: coefficients may be added/subtracted, constants may be multiplied (e.g. "2 * X1 + 3 * X2 = 7"
).
Equations with omitted =
assume zero on the right-hand side. See examples for syntax flexibility.
Author
Gianluca Sottile gianluca.sottile@unipa.it
Examples
n <- 100; p <- 100
beta <- c(runif(10, -2, 2), rep(0, p - 10))
sim <- simulXy(n = n, p = p, beta = beta, seed = 1, family = gaussian())
fit <- islasso(y ~ . -1, data = sim$data, family = gaussian())
# Test if first 5 variables sum to -7.5
anova(fit, A = c("X1 + X2 + X3 + X4 + X5 = -7.5"))
#>
#> Simultaneous Tests for General Linear Combination
#>
#> Fit: islasso(formula = y ~ . - 1, family = gaussian(), data = sim$data)
#>
#> Linear Hypothesis:
#> Estimate Std. Error Chisq Pr(>Chisq)
#> 1*X1 + 1*X2 + 1*X3 + 1*X4 + 1*X5 = -7.5 8.6889 0.2046 1804 <2e-16
#>
#> 1*X1 + 1*X2 + 1*X3 + 1*X4 + 1*X5 = -7.5 ***
#> ---
#> Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
#>
# Test multiple hypotheses
anova(fit, A = c("X1 + X2 + X3 + X4 + X5", "X6 + X7 + X8 + X9 + X10"), b = c(-7.5, 8.75))
#>
#> Simultaneous Tests for General Linear Combination
#>
#> Fit: islasso(formula = y ~ . - 1, family = gaussian(), data = sim$data)
#>
#> Linear Hypothesis:
#> Estimate Std. Error Chisq Pr(>Chisq)
#> 1*X1 + 1*X2 + 1*X3 + 1*X4 + 1*X5 = -7.5 8.6889 0.2046 1804 <2e-16
#> 1*X6 + 1*X7 + 1*X8 + 1*X9 + 1*X10 = 8.75 -7.2290 0.2005 1300 <2e-16
#> Overall 3210 <2e-16
#>
#> 1*X1 + 1*X2 + 1*X3 + 1*X4 + 1*X5 = -7.5 ***
#> 1*X6 + 1*X7 + 1*X8 + 1*X9 + 1*X10 = 8.75 ***
#> Overall ***
#> ---
#> Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
#>
# Full diagonal comparison to true coefficients
anova(fit, A = diag(p), b = beta)
#>
#> Simultaneous Tests for General Linear Combination
#>
#> Fit: islasso(formula = y ~ . - 1, family = gaussian(), data = sim$data)
#>
#> Linear Hypothesis:
#> Estimate Std. Error Chisq Pr(>Chisq)
#> 1*X1 = 1.07044170238078 -1.898e-01 9.555e-02 3.945 0.0470 *
#> 1*X2 = 1.46746669057757 -1.315e-01 9.738e-02 1.822 0.1770
#> 1*X3 = 1.37849498912692 -8.651e-02 9.660e-02 0.802 0.3705
#> 1*X4 = -1.24812392890453 2.785e-02 9.769e-02 0.081 0.7756
#> 1*X5 = -1.32358047738671 2.241e-01 9.571e-02 5.481 0.0192 *
#> 1*X6 = -1.40233596228063 1.196e-01 9.415e-02 1.612 0.2042
#> 1*X7 = 1.66532131284475 -1.570e-01 9.281e-02 2.861 0.0907 .
#> 1*X8 = 1.35188855323941 -4.620e-02 9.753e-02 0.224 0.6357
#> 1*X9 = 0.984678914770484 -7.577e-02 1.015e-01 0.557 0.4553
#> 1*X10 = -1.03049966692924 1.113e-01 9.653e-02 1.331 0.2487
#> 1*X11 = 0 2.360e-02 5.570e-02 0.180 0.6717
#> 1*X12 = 0 5.831e-07 1.211e-02 0.000 1.0000
#> 1*X13 = 0 -7.058e-07 1.444e-02 0.000 1.0000
#> 1*X14 = 0 2.483e-07 5.215e-03 0.000 1.0000
#> 1*X15 = 0 2.263e-07 4.732e-03 0.000 1.0000
#> 1*X16 = 0 -4.995e-02 6.628e-02 0.568 0.4511
#> 1*X17 = 0 -2.436e-07 5.088e-03 0.000 1.0000
#> 1*X18 = 0 -5.081e-07 1.054e-02 0.000 1.0000
#> 1*X19 = 0 -7.312e-02 7.117e-02 1.055 0.3043
#> 1*X20 = 0 1.273e-01 8.391e-02 2.302 0.1292
#> 1*X21 = 0 5.185e-02 6.571e-02 0.623 0.4300
#> 1*X22 = 0 -2.218e-02 5.654e-02 0.154 0.6949
#> 1*X23 = 0 -9.959e-07 2.037e-02 0.000 1.0000
#> 1*X24 = 0 6.174e-02 6.624e-02 0.869 0.3514
#> 1*X25 = 0 2.907e-02 5.794e-02 0.252 0.6158
#> 1*X26 = 0 2.765e-02 5.748e-02 0.231 0.6305
#> 1*X27 = 0 -1.419e-02 5.408e-02 0.069 0.7930
#> 1*X28 = 0 -1.479e-07 3.094e-03 0.000 1.0000
#> 1*X29 = 0 7.998e-02 7.077e-02 1.277 0.2584
#> 1*X30 = 0 4.085e-02 6.114e-02 0.446 0.5040
#> 1*X31 = 0 -6.110e-07 1.275e-02 0.000 1.0000
#> 1*X32 = 0 -4.996e-03 4.930e-02 0.010 0.9193
#> 1*X33 = 0 2.913e-07 6.016e-03 0.000 1.0000
#> 1*X34 = 0 3.487e-02 6.111e-02 0.326 0.5682
#> 1*X35 = 0 -3.521e-08 1.847e-03 0.000 1.0000
#> 1*X36 = 0 7.732e-07 1.596e-02 0.000 1.0000
#> 1*X37 = 0 1.381e-07 2.894e-03 0.000 1.0000
#> 1*X38 = 0 -4.978e-07 1.032e-02 0.000 1.0000
#> 1*X39 = 0 1.856e-07 3.886e-03 0.000 1.0000
#> 1*X40 = 0 -8.699e-07 1.776e-02 0.000 1.0000
#> 1*X41 = 0 5.036e-03 5.031e-02 0.010 0.9203
#> 1*X42 = 0 1.607e-02 5.373e-02 0.089 0.7648
#> 1*X43 = 0 1.392e-02 5.449e-02 0.065 0.7984
#> 1*X44 = 0 -4.935e-02 6.393e-02 0.596 0.4401
#> 1*X45 = 0 -2.718e-02 5.794e-02 0.220 0.6390
#> 1*X46 = 0 1.534e-07 3.227e-03 0.000 1.0000
#> 1*X47 = 0 2.998e-02 5.548e-02 0.292 0.5889
#> 1*X48 = 0 9.617e-07 1.982e-02 0.000 1.0000
#> 1*X49 = 0 -6.510e-07 1.353e-02 0.000 1.0000
#> 1*X50 = 0 2.632e-02 5.521e-02 0.227 0.6336
#> 1*X51 = 0 8.672e-07 1.780e-02 0.000 1.0000
#> 1*X52 = 0 5.487e-02 6.595e-02 0.692 0.4054
#> 1*X53 = 0 -6.527e-02 6.943e-02 0.884 0.3471
#> 1*X54 = 0 8.401e-02 7.365e-02 1.301 0.2540
#> 1*X55 = 0 -1.469e-07 3.058e-03 0.000 1.0000
#> 1*X56 = 0 -4.802e-02 6.277e-02 0.585 0.4443
#> 1*X57 = 0 -4.176e-02 5.967e-02 0.490 0.4840
#> 1*X58 = 0 3.396e-02 5.925e-02 0.329 0.5665
#> 1*X59 = 0 -5.697e-07 1.193e-02 0.000 1.0000
#> 1*X60 = 0 -3.835e-02 6.081e-02 0.398 0.5282
#> 1*X61 = 0 7.258e-02 7.118e-02 1.040 0.3079
#> 1*X62 = 0 1.642e-02 5.378e-02 0.093 0.7601
#> 1*X63 = 0 3.058e-02 5.686e-02 0.289 0.5907
#> 1*X64 = 0 3.150e-07 6.568e-03 0.000 1.0000
#> 1*X65 = 0 1.689e-02 5.107e-02 0.109 0.7408
#> 1*X66 = 0 2.390e-07 4.978e-03 0.000 1.0000
#> 1*X67 = 0 1.168e-02 5.445e-02 0.046 0.8302
#> 1*X68 = 0 -5.281e-07 1.087e-02 0.000 1.0000
#> 1*X69 = 0 7.394e-07 1.536e-02 0.000 1.0000
#> 1*X70 = 0 5.679e-02 6.667e-02 0.726 0.3943
#> 1*X71 = 0 -2.834e-07 5.919e-03 0.000 1.0000
#> 1*X72 = 0 9.920e-07 2.034e-02 0.000 1.0000
#> 1*X73 = 0 2.856e-02 5.608e-02 0.259 0.6106
#> 1*X74 = 0 -1.096e-07 2.281e-03 0.000 1.0000
#> 1*X75 = 0 1.078e-02 5.238e-02 0.042 0.8370
#> 1*X76 = 0 8.778e-07 1.799e-02 0.000 1.0000
#> 1*X77 = 0 -3.590e-07 7.535e-03 0.000 1.0000
#> 1*X78 = 0 2.366e-07 4.962e-03 0.000 1.0000
#> 1*X79 = 0 2.358e-02 5.534e-02 0.182 0.6701
#> 1*X80 = 0 -3.931e-02 5.947e-02 0.437 0.5087
#> 1*X81 = 0 1.324e-02 5.536e-02 0.057 0.8109
#> 1*X82 = 0 6.608e-07 1.373e-02 0.000 1.0000
#> 1*X83 = 0 -1.488e-01 8.902e-02 2.793 0.0947 .
#> 1*X84 = 0 4.263e-02 6.113e-02 0.486 0.4855
#> 1*X85 = 0 5.055e-02 6.484e-02 0.608 0.4356
#> 1*X86 = 0 9.589e-07 1.951e-02 0.000 1.0000
#> 1*X87 = 0 -7.796e-02 7.056e-02 1.221 0.2692
#> 1*X88 = 0 4.014e-07 8.348e-03 0.000 1.0000
#> 1*X89 = 0 -1.119e-01 7.866e-02 2.025 0.1547
#> 1*X90 = 0 1.693e-07 3.538e-03 0.000 1.0000
#> 1*X91 = 0 1.197e-07 2.506e-03 0.000 1.0000
#> 1*X92 = 0 -2.345e-02 5.585e-02 0.176 0.6746
#> 1*X93 = 0 6.268e-07 1.296e-02 0.000 1.0000
#> 1*X94 = 0 -2.174e-02 5.758e-02 0.142 0.7058
#> 1*X95 = 0 9.456e-07 1.952e-02 0.000 1.0000
#> 1*X96 = 0 3.366e-07 6.998e-03 0.000 1.0000
#> 1*X97 = 0 2.035e-06 4.033e-02 0.000 1.0000
#> 1*X98 = 0 -8.191e-07 1.673e-02 0.000 1.0000
#> 1*X99 = 0 -8.863e-07 1.827e-02 0.000 1.0000
#> 1*X100 = 0 -4.135e-07 8.578e-03 0.000 1.0000
#> Overall 44.858 1.0000
#> ---
#> Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
#>