Estimation of functional linear mixed models for irregularly or
    sparsely sampled data based on functional principal component analysis.

Provides a general framework for performing sparse functional
    clustering as originally described in Floriello and Vitelli (2017)
    <doi:10.1016/j.jmva.2016.10.008>, with the possibility of jointly handling
    data misalignment (see Vitelli, 2019, <doi:10.48550/arXiv.1912.00687>).

Implements sparse generalized factor models (sparseGFM) for dimension reduction
    and variable selection in high-dimensional data with automatic adaptation to weak factor
    scenarios. The package supports multiple data types (continuous, count, binary) through
    generalized linear model frameworks and handles missing values automatically. It provides
    12 different penalty functions including Least Absolute Shrinkage and Selection Operator (Lasso),
    adaptive Lasso, Smoothly Clipped Absolute Deviation (SCAD), Minimax Concave Penalty (MCP), group Lasso,
    and their adaptive versions for inducing row-wise sparsity in factor loadings. Key features
    include cross-validation for regularization parameter selection using Sparsity Information
    Criterion (SIC), automatic determination of the number of factors via multiple information
    criteria, and specialized algorithms for row-sparse loading structures. The methodology
    employs alternating minimization with Singular Value Decomposition (SVD)-based identifiability
    constraints and is particularly effective for high-dimensional applications in genomics, economics,
    and social sciences where interpretable sparse dimension reduction is crucial.
    For penalty functions, see Tibshirani (1996) <doi:10.1111/j.2517-6161.1996.tb02080.x>,
    Fan and Li (2001) <doi:10.1198/016214501753382273>, and Zhang (2010) <doi:10.1214/09-AOS729>.

Efficient implementation of sparse group lasso with optional
    bound constraints on the coefficients; see
    <doi:10.18637/jss.v110.i06>.  It supports the use of a sparse design
    matrix as well as returning coefficient estimates in a sparse matrix.
    Furthermore, it correctly calculates the degrees of freedom to allow
    for information criteria rather than cross-validation with very large
    data. Finally, the interface to compiled code avoids unnecessary
    copies and allows for the use of long integers.