impute_svd: Imputa datos faltantes con una SVD de rango reducido

View source: R/impute.R

impute_svdR Documentation

Imputa datos faltantes con una SVD de rango reducido

Description

Rellena las celdas NA con la aproximación de rango bajo de la matriz, iterando hasta que los valores imputados se estabilizan. Es el ajuste por mínimos cuadrados alternados descrito por Gabriel y Zamir (1979) y revisado por Galindo (1986, sección 3.1).

Usage

impute_svd(
  X,
  rank = 2,
  transform = c("standardize", "center", "double", "grand", "none"),
  maxit = 500,
  tol = 1e-06
)

Arguments

X

Matriz o data.frame numérico con NA.

rank

Rango de la aproximación (por defecto 2, el plano del biplot). Debe ser menor que el número de filas y de columnas.

transform

Transformación usada en cada iteración, como en bigarx(). Conviene usar la misma del análisis posterior.

maxit

Número máximo de iteraciones.

tol

Tolerancia para el cambio relativo de los valores imputados.

Details

Algoritmo:

  1. Se rellenan los NA con la media de su columna.

  2. Se aplica la transformación elegida (por ejemplo, estandarizar).

  3. Se calcula la SVD y la aproximación de rango rank.

  4. Se vuelve a la escala original y se reemplazan solo las celdas faltantes por los valores aproximados.

  5. Se repiten los pasos 2 a 4 hasta que el cambio relativo de los valores imputados sea menor que tol.

Los valores observados nunca se modifican.

Value

Un objeto de clase "bigarx_imputation": lista con

X

La matriz completa.

missing

Matriz de posiciones (fila, columna) imputadas.

values

data.frame con fila, columna y valor imputado.

iterations, converged, rank, transform

Detalles del ajuste.

References

Gabriel, K. R. y Zamir, S. (1979). Lower rank approximation of matrices by least squares with any choice of weights. Technometrics, 21(4), 489-498.

Galindo, M. P. (1986). Una alternativa de representación simultánea: HJ-Biplot. Qüestiió, 10(1), 13-23.

Examples

X <- as.matrix(USArrests)
X[c(3, 10, 25), 2] <- NA
imp <- impute_svd(X, rank = 2)
imp
imp$values

BiGaRx documentation built on Oct. 30, 2026, 1:07 a.m.