train.TRMF | R Documentation |

This function is the "engine" of the TRMF package. It takes a previously created TRMF object, sets up the internal objects and fits it to the data using an alternating least squares (ALS) algorithm.

```
## S3 method for class 'TRMF'
train(x,numit=10,Xm=NULL,Fm=NULL,Z=NULL,...)
```

`x` |
A TRMF object to be fit. |

`numit` |
Number of alternating least squares iterations |

`Xm` |
Optional initial matrix. See details |

`Fm` |
Optional initial matrix. See details |

`Z` |
Optional initial vector. See details |

`...` |
ignored |

If a coefficient model is not present in `object`

, it adds a L2 regularization model. If no time series models have been added to `object`

, it adds a simple model using `TRMF_simple`

. If `Xm, Fm`

are both NULL, then initial estimates are provided. If both are provided, the ALS algorithm is started with `Xm`

(with a warning) and `Fm`

is overwritten with the next ALS step. If external regressors are in the model and Fm is provided, the number of rows of columns must equal number of regressors plus columns of Xm. The format of Fm in this case is: [column_xreg_parameters,global_xreg_parameters,Fm_parameters]^T.
If `Z`

is NULL, then a vector of 1's is used as initial estimate.

`train`

returns a fitted object of `class`

"`TRMF`

" that contains the data, all added models, matrix factorization and fitted model. The matrix factors Xm, Fm
are stored in `object$Factors$Xm`

and `object$Factors$Fm`

, `object$Factors$Z`

respectively. Use `fitted`

to get fitted model, use `resid`

to get residuals, use `coef`

to get coefficients (Fm matrix) and `components`

to get `Xm`

or `Fm`

.

Chad Hammerquist

Yu, Hsiang-Fu, Nikhil Rao, and Inderjit S. Dhillon. "High-dimensional time series prediction with missing values." arXiv preprint arXiv:1509.08333 (2015).

`create_TRMF`

, `TRMF_columns`

, `TRMF_trend`

```
# create test data
xm = poly(x = (-10:10)/10,degree=4)
fm = matrix(rnorm(40),4,10)
Am = xm%*%fm+rnorm(210,0,.2)
# create model
obj = create_TRMF(Am)
out = train(obj)
plot(out)
```

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.