-
1. PCA sobre las 8 columnas escaladas da explained_variance_ratio_ [0.485, 0.229, 0.134, 0.055, …]. ¿Cuánta varianza conserva un mapa 2D y cuántos componentes elige PCA(0.90)?
La acumulada es 0.485, 0.715, 0.848, 0.904: con 2 componentes se conserva el 71.5 % y con 4 se supera el 90 %, así que PCA(0.90) elige 4.
-
2. Si se aplica PCA a las sesiones SIN escalar, el primer componente explica 0.9999 de la varianza y su carga es 1.0 en monto_carrito_mxn. ¿Qué significa?
PCA busca la dirección de mayor varianza y solo centra, no escala. El monto tiene varianza 3,722,205, así que PC1 es esa columna y no resume nada. Hay que escalar antes.
-
3. Las cargas de PC1 son altas en paginas (0.48), productos_vistos (0.47), resenas_leidas (0.45), minutos y busquedas; las de PC2, en agregados_carrito (0.71) y monto_carrito_mxn (0.69). ¿Qué nombres describen mejor los ejes?
Las cargas dicen qué columnas forman cada componente: PC1 junta todas las de navegación y PC2 las del carrito. Los nombres los pone el analista a partir de esas cargas.
-
4. Con np.linalg.svd(Xs) sobre las sesiones escaladas, los valores singulares son 76.3, 52.4, 40.0, 25.8… y S**2 / (S**2).sum() da 0.485, 0.229, 0.134, 0.055… ¿Qué muestra esto?
Sobre datos centrados, los valores singulares al cuadrado son proporcionales a la varianza de cada componente: PCA es la SVD de los datos centrados, y U @ diag(S) @ Vt reconstruye Xs.
-
5. TruncatedSVD(3, random_state=42) sobre la matriz de vistas (1500 × 12, 45.8 % ceros) da explained_variance_ratio_ [0.245, 0.341, 0.265]. ¿Por qué el primer componente explica menos que el segundo?
TruncatedSVD no centra los datos (por eso acepta matrices dispersas); su primer componente capta el volumen general, que no cuenta como varianza. El orden lo dan singular_values_ (335.4, 243.7, 211.7).