## ----include = FALSE----------------------------------------------------------
knitr::opts_chunk$set(
  collapse = TRUE,
  comment = "#>",
  fig.width = 6,
  fig.height = 4
)

## -----------------------------------------------------------------------------
library(CircularRegression)

data(bison)

d <- bison[seq_len(200), c("y.dir", "y.prec", "x.meadow", "z.meadow")]
d <- na.omit(d)
str(d)

## -----------------------------------------------------------------------------
fit <- circular_regression(
  y.dir ~ y.prec + x.meadow:z.meadow,
  data = d
)

fit

## -----------------------------------------------------------------------------
summary(fit)
coef(fit)

## -----------------------------------------------------------------------------
pred <- predict(fit)
res <- residuals(fit)

head(data.frame(observed = d$y.dir, fitted = pred, residual = res))
summary(res)

## -----------------------------------------------------------------------------
plot(
  pred,
  res,
  xlab = "Fitted direction",
  ylab = "Circular residual",
  pch = 19,
  col = "gray30"
)
abline(h = 0, lty = 2)

## -----------------------------------------------------------------------------
fit_cons <- consensus(
  y.dir ~ y.prec + x.meadow:z.meadow,
  data = d
)

coef(fit_cons)
head(predict(fit_cons))

