| Title: | Longitudinal Dataframes into Arrays for Machine Learning Training | 
| Version: | 0.2.0 | 
| Maintainer: | Luis Garcez <luisgarcez1@gmail.com> | 
| Description: | An easy tool to transform 2D longitudinal data into 3D arrays suitable for Long short-term memory neural networks training. The array output can be used by the 'keras' package. Long short-term memory neural networks are described in: Hochreiter, S., & Schmidhuber, J. (1997) <doi:10.1162/neco.1997.9.8.1735>. | 
| Imports: | abind, dplyr | 
| License: | GPL (≥ 3) | 
| Encoding: | UTF-8 | 
| LazyData: | true | 
| RoxygenNote: | 7.1.1 | 
| URL: | https://github.com/luisgarcez11/long2lstmarray | 
| BugReports: | https://github.com/luisgarcez11/long2lstmarray/issues | 
| Suggests: | knitr, rmarkdown, testthat | 
| Depends: | R (≥ 2.10) | 
| VignetteBuilder: | knitr | 
| NeedsCompilation: | no | 
| Packaged: | 2022-11-28 13:30:29 UTC; jjferreira-admin | 
| Author: | Luis Garcez | 
| Repository: | CRAN | 
| Date/Publication: | 2022-11-28 14:40:05 UTC | 
Clinical scale example data
Description
An example dataset containing Amyotrophic Lateral Sclerosis Functional Rating Scale - Revised.
Usage
alsfrs_data
Format
A data frame with 100 rows and 15 variables:
- subjid
- Subject ID 
- visdy
- Visit day 
- p1
- Scale items 
- p2
- Scale items 
- p3
- Scale items 
- p4
- Scale items 
- p5
- Scale items 
- p6
- Scale items 
- p7
- Scale items 
- p8
- Scale items 
- p9
- Scale items 
- p10
- Scale items 
- x1r
- Scale items 
- x2r
- Scale items 
- x3r
- Scale items 
Source
https://pubmed.ncbi.nlm.nih.gov/10540002/
Generate a matrix with various lags from a variable in the dataframe
Description
Generate a matrix with various lags from a variable in the dataframe
Usage
get_var_array(
  data,
  subj_var,
  var,
  time_var,
  lags,
  label_length = 1,
  label_output = FALSE
)
Arguments
| data | A data frame, data frame extension (e.g. a  | 
| subj_var | A character string referring to the variable that specifies the "subject" variable. | 
| var | A character string referring to the variable that contains the variable values. | 
| time_var | A character string referring to the variable that contains the time variable values (e.g. visit day, minutes, years). | 
| lags | The length of each sliced sequence. | 
| label_length | How many values after are considered to
be the label? Default to 1. If  | 
| label_output | logical. if  | 
Value
If label_output is FALSE,
a matrix with the sliced sequences is returned.
If label_output is TRUE, a list with the matrix
and vector with the labels from the same variable is returned.
Examples
get_var_array(alsfrs_data, "subjid", 
"p2", "visdy", lags = 3, 
label_output = FALSE)
Get variable values from subject/variable name pair
Description
Get variable values from subject/variable name pair
Usage
get_var_sequence(data, subj_var, subj, var)
Arguments
| data | A data frame, data frame extension (e.g. a  | 
| subj_var | A character string referring to the variable that specifies the "subject" variable. | 
| subj | Any value that the "subject" variable can take. | 
| var | A character string referring to the variable that contains the variable values. | 
Value
A vector of values from variable var
which subj_var equal to subj.
Examples
get_var_sequence(sleep, subj_var = "ID", 1, "extra")
Generate a matrix with various lags from a dataframe
Description
Generate a matrix with various lags from a dataframe
Usage
longitudinal_array(
  data,
  subj_var,
  vars,
  time_var,
  lags,
  label_length = 1,
  label_var = NULL,
  label_output = FALSE,
  time_var_output = FALSE
)
Arguments
| data | A data frame, data frame extension (e.g. a  | 
| subj_var | A character string referring to the variable that specifies the "subject" variable. | 
| vars | A character string referring to the variables that contain the variable values. | 
| time_var | A character string referring to the variable that contains the time variable values (e.g. visit day, minutes, years). Important to get the sequences in the right order. | 
| lags | The length of each sliced sequence. | 
| label_length | How many values after are considered to be
the label? Default to 1. If  | 
| label_var | A character string referring to the variables that contain the label variable values. | 
| label_output | logical. if  | 
| time_var_output | logical. Is  | 
Value
If label_output is FALSE, a 3D array with the
sliced sequences is returned. The array dimensions are
subject, time and variable.
If label_output is TRUE, a list with the array
and vector with the labels is returned.
Examples
longitudinal_array(alsfrs_data, "subjid", c("p1", "p2", "p3"), 
                   "visdy", lags = 3, label_output = FALSE)
longitudinal_array(alsfrs_data, "subjid", c("p1", "p2", "p3"),
                   "visdy", lags = 3, label_output = FALSE)[1,,]
longitudinal_array(alsfrs_data, "subjid", c("p1", "p2", "p3"), 
                  "visdy", lags = 3, label_output = FALSE)[,1,]
longitudinal_array(alsfrs_data, "subjid", c("p1", "p2", "p3"),
                  "visdy", lags = 3, label_output = FALSE)[,,1]
Generate a matrix with various lags from a sequence
Description
Generate a matrix with various lags from a sequence
Usage
slice_var_sequence(sequence, lags, label_length = 1, label_output = TRUE)
Arguments
| sequence | A vector representing the sequence to be sliced into many rows. | 
| lags | The length of each sliced sequence. | 
| label_length | How many values after are
considered to be the label? Default to 1.
If  | 
| label_output | logical. if  | 
Value
If label_output is FALSE, a matrix with
the sliced sequences is returned.
If label_output is TRUE, a list with
the matrix and vector with
the labels is returned.
Examples
slice_var_sequence(sequence = 1:30,
 lags = 3, label_length = 1,
 label_output = TRUE)
 
slice_var_sequence(sequence = 1:30, 
lags = 3, label_length = 1,
 label_output = FALSE)
 
slice_var_sequence(sequence = 1:30,
 lags = 3, label_length = 2,
  label_output = FALSE)