PCA_FEATURES
Sólo se aplica a PredictiveInsight.
Sintaxis
PCA_FEATURES(num_features, data [, PCA(base_data)])
Parámetros
num_features
El número de características para extraer del rango de datos especificado utilizando el análisis de componente principal (PCA). Este valor debe ser un entero positivo que se encuentre entre uno y el número de columnas del rango de datos especificado por data.
data
Los valores numéricos de los cuales se deben extraer características. Este puede ser una columna, un rango de celdas o una expresión que evalúa a cualquiera de los anteriores. Para obtener la definición de formato de data, consulte la sección "Parámetros de función de macro" en el capítulo de esta guía para el producto de IBM® .
PCA(base_data)
Si se proporciona este parámetro opcional, PCA se realiza en este rango de datos de base_data y los autovectores resultantes se utilizan para extraer características del rango de datos de data. Para obtener la definición de formato de base_data (al igual que data), consulte la sección "Macro Function Parameters" en el capítulo de esta guía para el producto de IBM® . El número de columnas en base_data debe ser el mismo que el número de columnas en data.
Descripción
PCA_FEATURES extrae las primeras num_features características del rango de datos especificado. Devuelve num_features columnas utilizando los autovectores generados por el análisis de componente principal en el rango de datos base_data, si se proporcionó. Si no se proporcionó, utiliza data para generar los autovectores. En este caso, data se normaliza automáticamente utilizando el método de promedio cero, variante de unidad, antes del análisis de componente principal.
Las características se calculan de la siguiente manera:
*
El rango de datos data se normaliza automáticamente utilizando el método de promedio cero, variante de unidad. En otras palabras,
PCA_FEATURES(num_features, data)
es equivalente a
PCA_FEATURES(num_features, data,PCA(data, COL))
Ninguna normalización de data se proporciona automáticamente. Para normalizar data utilizando NORM_ZSCORE, puede especificar lo siguiente:
PCA_FEATURES(num_features, data, PCA(NORM_ZSCORE(data, COL)))
*
El análisis de componente principal se realiza en el rango de datos normalizado para generar sus autovectores (consulte los detalles descritos para la función de macro PCA). Esto se produce automáticamente para data si base_data no se proporciona. Se realiza mediante la llamada explícita a la función de macro PCA si base_data se proporciona.
*
Cada fila () del rango de datos (data) se transforma en un nuevo sistema coordinado() que se basa en los primeros autovectores clasificados num_features (m) que componen :
*
Las k filas de los datos transformados ( a ) se devuelven (n columnas).
Si se proporciona el rango de datos base_data, debe tener el mismo número de columnas que el rango de datos data, de lo contrario, se devuelve un error.
*
Dado que el cálculo de PCA en un rango de datos puede ser calculado en forma intensiva, la utilización de la función de macro BUFFER en el cálculo de PCA es mucho más eficaz. Por ejemplo: PCA_FEATURES(num_features, range, BUFFER(PCA(base_data)))
Ejemplos
Crea cinco columnas nuevas denominadas TEMP, VW, VX, VY y VZ, que contienen las cinco primeras características del rango de datos V1:V7. El rango de datos V1:V7 se utiliza como base para la transformación.
Crea tres nuevas columnas denominadas TEMP, VX y VY, que contienen las tres primeras características del rango de datos V1:V4. El rango de datos V10:V13 se utiliza como base para la transformación.
Crea tres nuevas columnas denominadas TEMP, VX y VY, que contienen las tres primeras características del rango de datos V1:V4. El rango de datos V10:V13 se utiliza como base para la transformación. Una vez que los principales componentes del rango de datos V10:V13 se calculan, esos valores se almacenan como constantes. Si los valores de los datos de las columnas V10-V13 cambian, no afectarán a esta definición de función.
Funciones relacionadas