Después de haber discutido la función JSL 'Vec Quadratic()' con un informático, ambos estuvimos de acuerdo en que no entendíamos su funcionamiento exacto. También revisé el índice de secuencias de comandos y la biblioteca de documentación:


El problema surgió con el ejemplo adjunto de predicción y cálculo del intervalo de confianza, donde se utiliza esta función. Específicamente, lo que nadie puede leer es la parte después de la matriz de covarianza y por qué implica una concatenación ('[1] || :X') (consulte también la captura de pantalla a continuación).

Si alguien pudiera explicarme o indicarme una dirección para obtener más documentación, se lo agradecería mucho.
Gracias, eso tiene mucho sentido, por supuesto.
Hola @Ressel ,
Espero poder explicar un poco, o al menos arrojar algo más de luz sobre este tema.
Si revisa el índice de secuencias de comandos y sigue el ejemplo que tienen para Vec Quadratic(), tendrá mucho más sentido. Si tiene una matriz X = [1 3 5, 2 4 6], que es una matriz de 2x3, y si la transpone para obtener una matriz de 3x2, X' = [1 2, 3 4, 5 6].
El siguiente paso es realizar un producto escalar matricial estándar con la matriz simétrica, S = [1 3 5, 3 2 6, 5 6 1], S*X':
S*X' = [1 3 5, 3 2 6 , 5 6 1]*[1 2, 3 4, 5 6] = [1+9+25 2+12+30, 3+6+30 6+8 +36, 5+18+5 10+24+6] = [35 44, 39 50, 28 40].
El siguiente paso es hacer el producto escalar de esta nueva matriz con X para obtener una nueva matriz de 2x2:
X*(S*X') = [1 3 5, 2 4 6]*[35 44, 39 50, 28 40] = [292 394, 394 528].
La función Vec Cuadrática simplemente toma los elementos diagonales de esto para obtener el vector [292, 528].
La función de concatenar || está ahí para que la fórmula pueda multiplicar la matriz simétrica de 2x2 con una matriz transpuesta de 2x1 para esa fila en la tabla de datos. Por ejemplo, con la fila 1, el Vec Cuadrático terminará pareciéndose a este Vec Cuadrático ([2.33333333333333 -1, -1 0.5], [1] || 1). que es lo mismo que Vec Quadratic ([2.33333333333333 -1, -1 0.5], [1,1]). El [1]||:X para la fila 1 termina pareciéndose a [1 1] y para la fila 2 se parece a [1 2], etc. La fórmula necesita tomar la entrada de una sola fila para :X y convertirla en una matriz , entonces eso es lo que hace [1]||:X en la fórmula.
Espero que esto tenga sentido.
¡Buena suerte!,
DS