# spml.reg: Circular or angular regression In Rfast: A Collection of Efficient and Extremely Fast R Functions

## Description

Regression with circular dependent variable and Euclidean or categorical independent variables.

## Usage

 `1` ```spml.reg(y, x, tol = 1e-07, seb = FALSE, maxiters = 100) ```

## Arguments

 `y` The dependent variable, it can be a numerical vector with data expressed in radians or it can be a matrix with two columns, the cosinus and the sinus of the circular data. The benefit of the matrix is that if the function is to be called multiple times with the same response, there is no need to transform the vector every time into a matrix. `x` The independent variable(s). Can be Euclidean or categorical (factor variables). `tol` The tolerance value to terminatate the Newton-Raphson algorithm. `seb` Do you want the standard error of the estimates to be returned? TRUE or FALSE. `maxiters` The maximum number of iterations to implement.

## Details

The Newton-Raphson algorithm is fitted in this regression as described in Presnell et al. (1998).

## Value

A list including:

 `iters` The number of iterations required until convergence of the EM algorithm. `be` The regression coefficients. `seb` The standard errors of the coefficients. `loglik` The value of the maximised log-likelihood. `seb` The covariance matrix of the beta values.

## References

Presnell Brett, Morrison Scott P. and Littell Ramon C. (1998). Projected multivariate linear models for directional data. Journal of the American Statistical Association, 93(443): 1068-1077.

```spml.mle, iag.mle, acg.mle ```
 ``` 1 2 3 4 5 6 7 8 9 10``` ```## Not run: x <- rnorm(100) z <- cbind(3 + 2 * x, 1 -3 * x) y <- cbind( rnorm(100,z[ ,1], 1), rnorm(100, z[ ,2], 1) ) y <- y / sqrt( rowsums(y^2) ) a1 <- spml.reg(y, x) y <- atan( y[, 2] / y[, 1] ) + pi * I(y[, 1] < 0) a2 <- spml.reg(y, x) ## End(Not run) ```