Approximates marginal dimension test significance levels for sir, save, and phd by sampling from the permutation distribution.

dr.permutation.test(object, npermute=50,numdir=object$numdir)

Arguments

object

a dimension reduction regression object created by dr

npermute

number of permutations to compute, default is 50

numdir

maximum permitted value of the dimension, with the default from the object

Details

The method approximates significance levels of the marginal dimension tests based on a permutation test. The algorithm: (1) permutes the rows of the predictor but not the response; (2) computes marginal dimension tests for the permuted data; (3) obtains significane levels by comparing the observed statsitics to the permutation distribution.

The method is not implemented for ire.

Value

Returns an object of type ‘dr.permutation.test’ that can be printed or summarized to give the summary of the test.

References

See www.stat.umn.edu/arc/addons.html, and then select the article on dimension reduction regression or inverse regression.

Author

Sanford Weisberg, sandy@stat.umn.edu

See also

Examples

data(ais)
attach(ais)  # the Australian athletes data
#fit dimension reduction regression using sir
m1 <- dr(LBM~Wt+Ht+RCC+WCC, method="sir", nslices = 8)
summary(m1)
#> 
#> Call:
#> dr(formula = LBM ~ Wt + Ht + RCC + WCC, method = "sir", nslices = 8)
#> 
#> Method:
#> sir with 8 slices, n = 202.
#> 
#> Slice Sizes:
#> 25 25 25 25 27 27 30 18 
#> 
#> Estimated Basis Vectors for Central Subspace:
#>         Dir1      Dir2    Dir3     Dir4
#> Wt  -0.11412 -0.016473 -0.3759  0.01182
#> Ht  -0.05112 -0.003916  0.6108 -0.04842
#> RCC -0.99086  0.999513 -0.4675  0.12609
#> WCC  0.05060 -0.026227  0.5167  0.99077
#> 
#>               Dir1   Dir2    Dir3    Dir4
#> Eigenvalues 0.8769 0.1592 0.04233 0.01313
#> R^2(OLS|dr) 0.9987 0.9988 0.99997 1.00000
#> 
#> Large-sample Marginal Dimension Tests:
#>                Stat df  p.value
#> 0D vs >= 1D 220.484 28 0.000000
#> 1D vs >= 2D  43.354 18 0.000713
#> 2D vs >= 3D  11.201 10 0.342038
#> 3D vs >= 4D   2.651  4 0.617748
dr.permutation.test(m1,npermute=100)
#> $summary
#>                   Stat   p.value
#> 0D vs >= 1D 220.483739 0.0000000
#> 1D vs >= 2D  43.353869 0.0000000
#> 2D vs >= 3D  11.201479 0.2673267
#> 3D vs >= 4D   2.651387 0.5148515
#> 
#> $npermute
#> [1] 100
#> 
#> attr(,"class")
#> [1] "dr.permutation.test"
plot(m1)