`mfd`

classLet us show how the `funcharts`

package works through an
example with the dataset `air`

, which has been included from
the R package `FRegSigCom`

and is used in the paper of Qi and
Luo (2019).

`mfd`

classWe provide the `mfd`

class for multivariate functional
data. It inherits from the `fd`

class but provides some
additional features:

- It forces the
`coef`

argument to be an array even when the number of functional observations and/or the number of functional variables are one - It provides a better subset function
`[`

that never drops dimensions, then it always returns a`mfd`

object with three-dimensional array argument`coef`

; moreover it allows extracting observations/variables also by name - When possible, it stores the original raw data in the long data frame format

The first thing is to get the `mfd`

object from discrete
data. We currently allow two types of input with the two functions:

`get_mfd_data.frame`

: first input must be a data.frame in the long format, with:- one
`arg`

column giving the argument (`x`

) values, - one
`id`

column indicating the functional observation, - one column per each functional variable indicating the corresponding
`y`

values

- one
`get_mfd_list`

: first input must be a list of matrices for the case all functional data are observed on the same grid, which:- must have all the same dimension,
- have the variable names as name of the list,
- are such that, for each matrix:
- each row corresponds to a functional observation
- each column corresponds to a point on the grid

In this example, the dataset `air`

is in the second format
(list of matrices, with data observed on the same grid)

```
library(funcharts)
data("air")
<- names(air)[names(air) != "NO2"]
fun_covariates <- get_mfd_list(air[fun_covariates], grid = 1:24) mfdobj_x
```

We also provide plotting functions based on `ggplot2`

and
`patchwork`

.

`plot_mfd(mfdobj_x)`

`plot_mfd(mfdobj_x[1:10, c("CO", "C6H6")])`