cosinor.detect {cosinor2} | R Documentation |
Rhythm Detection Test
Description
Performs the rhythm detection test, a global test for the significance of the estimated model for single cosinor and population-mean cosinor.
Usage
cosinor.detect(x)
Arguments
x |
An object of the |
Details
The rhythm detection test, also called the zero-amplitude test, tests the overall significance of the cosinor model. The test is actually an F-ratio and is calculated as following (according to the procedure described in Cornélissen, 2014):
F = \frac{\frac{\sum(\widehat{Y}_i - \bar{Y})^2}{2}}{\frac{\sum(Y_i - \bar{Y})^2}{N - 3}}
with df_1 = 2
and df_2 = N - 3
, where \widehat{Y}_i
is the i
th estimated value, Y_i
is the i
th observed value, \bar{Y}
is the arithmetic mean of observed values and N
is the number of timepoints.
For the population-mean cosinor model, the test is calculated according to the procedure described in Bingham et al. (1982) as follows:
F = \frac{k(k-2)}{2(k-1)}\frac{1}{1-(\frac{\widehat{\sigma}_{\beta\gamma}}{\widehat{\sigma}_\beta \widehat{\sigma}_\gamma})^2}[\frac{\beta^2}{\widehat{\sigma}^2_\beta}-2\frac{\widehat{\sigma}_{\beta\gamma}}{\widehat{\sigma}_\beta \widehat{\sigma}_\gamma}\frac{\beta \gamma}{\widehat{\sigma}_\beta \widehat{\sigma}_\gamma}+\frac{\gamma^2}{\widehat{\sigma}^2_\gamma}]
with df_1 = 2
and df_2 = k - 2
, where k
is the number of subjects in the population, \widehat{\sigma}_\beta
and \widehat{\sigma}_\gamma
are standard deviations of population \beta
and \gamma
coefficients and \widehat{\sigma}_{\beta\gamma}
is the covariance of population \beta
and \gamma
coefficients.
References
Cornélissen, G. (2014). Cosinor-Based Rhythmometry. Theoretical Biology and Medical Modeling, 11, Article 16.
Bingham, C., Arbogast, B., Guillaume Cornélissen, G., Lee, J.K. & Halberg, F. (1982). Inferential Statistical Methods for Estimating and Comparing Cosinor Parameters. Chronobiologia, 9(4), 397-439.
Examples
fit.temperature<-cosinor.lm(Temperature~time(Time), period = 24, data = temperature_zg)
cosinor.detect(fit.temperature)
fit.november<-population.cosinor.lm(data = PANAS_november, time = PANAS_time,
period = 7)
cosinor.detect(fit.november)