Processing math: 100%

18 votos

Cómo escalar nuevas observaciones para hacer predicciones cuando el modelo estaba equipado con datos a escala?

Entiendo el concepto de la ampliación de la matriz de datos para su uso en un modelo de regresión lineal. Por ejemplo, en R puede utilizar:

scaled.data <- scale(data, scale=TRUE)

Mi única pregunta es, para las nuevas observaciones para que quiero para predecir los valores de salida, ¿cómo se escalan correctamente? Sería, scaled.new <- (new - mean(data)) / std(data)?

17voto

Slaurenluvschazz Puntos 26

La respuesta corta a tu pregunta es que sí - que la expresión para la escalada.nueva es la correcta (salvo que querían sd en lugar de std).

Cabe señalar que la escala tiene argumentos opcionales que puede utilizar:

scaled.new <- scale(new, center = mean(data), scale = sd(data))

También, el objeto devuelto por la escala (scaled.de datos) tiene los atributos de la celebración de la numérico de centrado y escalamientos de usar (si las hay), que puede utilizar:

scaled.new <- scale(new, attr(scaled.data, "scaled:center"), attr(scaled.data, "scaled:scale"))

La ventaja de que aparece cuando los datos originales tiene más de una columna, por lo que hay varios medios y/o desviaciones estándar a considerar.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X