# bits.test

##### Balanced Independent Two-Stage Monte Carlo Test

Performs a Balanced Independent Two-Stage Monte Carlo test of goodness-of-fit for spatial pattern.

##### Usage

```
bits.test(X, …,
exponent = 2, nsim=19,
alternative=c("two.sided", "less", "greater"),
leaveout=1, interpolate = FALSE,
savefuns=FALSE, savepatterns=FALSE,
verbose = TRUE)
```

##### Arguments

- X
Either a point pattern dataset (object of class

`"ppp"`

,`"lpp"`

or`"pp3"`

) or a fitted point process model (object of class`"ppm"`

,`"kppm"`

,`"lppm"`

or`"slrm"`

).- …
Arguments passed to

`dclf.test`

or`mad.test`

or`envelope`

to control the conduct of the test. Useful arguments include`fun`

to determine the summary function,`rinterval`

to determine the range of \(r\) values used in the test, and`use.theory`

described under Details.- exponent
Exponent used in the test statistic. Use

`exponent=2`

for the Diggle-Cressie-Loosmore-Ford test, and`exponent=Inf`

for the Maximum Absolute Deviation test.- nsim
Number of replicates in each stage of the test. A total of

`nsim * (nsim + 1)`

simulated point patterns will be generated, and the \(p\)-value will be a multiple of`1/(nsim+1)`

.- alternative
Character string specifying the alternative hypothesis. The default (

`alternative="two.sided"`

) is that the true value of the summary function is not equal to the theoretical value postulated under the null hypothesis. If`alternative="less"`

the alternative hypothesis is that the true value of the summary function is lower than the theoretical value.- leaveout
Optional integer 0, 1 or 2 indicating how to calculate the deviation between the observed summary function and the nominal reference value, when the reference value must be estimated by simulation. See Details.

- interpolate
Logical value indicating whether to interpolate the distribution of the test statistic by kernel smoothing, as described in Dao and Genton (2014, Section 5).

- savefuns
Logical flag indicating whether to save the simulated function values (from the first stage).

- savepatterns
Logical flag indicating whether to save the simulated point patterns (from the first stage).

- verbose
Logical value indicating whether to print progress reports.

##### Details

Performs the Balanced Independent Two-Stage Monte Carlo test proposed by Baddeley et al (2017), an improvement of the Dao-Genton (2014) test.

If `X`

is a point pattern, the null hypothesis is CSR.

If `X`

is a fitted model, the null hypothesis is that model.

The argument `use.theory`

passed to `envelope`

determines whether to compare the summary function for the data
to its theoretical value for CSR (`use.theory=TRUE`

)
or to the sample mean of simulations from CSR
(`use.theory=FALSE`

).

The argument `leaveout`

specifies how to calculate the
discrepancy between the summary function for the data and the
nominal reference value, when the reference value must be estimated
by simulation. The values `leaveout=0`

and
`leaveout=1`

are both algebraically equivalent (Baddeley et al, 2014,
Appendix) to computing the difference `observed - reference`

where the `reference`

is the mean of simulated values.
The value `leaveout=2`

gives the leave-two-out discrepancy
proposed by Dao and Genton (2014).

##### Value

A hypothesis test (object of class `"htest"`

which can be printed to show the outcome of the test.

##### References

Dao, N.A. and Genton, M. (2014)
A Monte Carlo adjusted goodness-of-fit test for
parametric models describing spatial point patterns.
*Journal of Graphical and Computational Statistics*
**23**, 497--517.

Baddeley, A., Diggle, P.J., Hardegen, A., Lawrence, T., Milne,
R.K. and Nair, G. (2014) On tests of spatial pattern based on
simulation envelopes. *Ecological Monographs* **84** (3) 477--489.

Baddeley, A., Hardegen, A., Lawrence, L.,
Milne, R.K., Nair, G.M. and Rakshit, S. (2017)
On two-stage Monte Carlo tests of composite hypotheses.
*Computational Statistics and Data Analysis*, in press.

##### See Also

Simulation envelopes: `bits.envelope`

.

##### Examples

```
# NOT RUN {
ns <- if(interactive()) 19 else 4
bits.test(cells, nsim=ns)
bits.test(cells, alternative="less", nsim=ns)
bits.test(cells, nsim=ns, interpolate=TRUE)
# }
```

*Documentation reproduced from package spatstat, version 1.64-1, License: GPL (>= 2)*