JSL の「Vec Quadratic()」関数についてコンピュータ サイエンティストと話し合った結果、両者ともその正確な動作を理解していないという意見で一致しました。また、スクリプト インデックスとドキュメント ライブラリも確認しました。


この問題は、この関数が使用されている、添付の予測および信頼区間の計算例で発生しました。具体的には、誰も読み取れないのは共分散行列の後の部分であり、なぜそこに連結 ('[1] || :X') が含まれているのかがわかりません (下のスクリーンショットも参照)。

どなたか説明していただいたり、さらなるドキュメントの方向性を示していただいたりすると、大変助かります。
ありがとう、もちろんそれは非常に理にかなっています。
こんにちは@Ressel 、
私はこの問題について、ある程度説明したり、少なくとももう少し明らかにしたりできればと思っています。
スクリプト インデックスに戻って、Vec Quadratic() の例に従うと、理解が深まります。2x3 行列である行列 X = [1 3 5, 2 4 6] があり、これを転置して 3x2 行列にすると、X' = [1 2, 3 4, 5 6] になります。
次のステップは、対称行列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]。
次のステップでは、この新しい行列と X のドット積を実行して、新しい 2x2 行列を取得します。
X*(S*X') = [1 3 5, 2 4 6]*[35 44, 39 50, 28 40] = [292 394, 394 528]。
Vec Quadratic関数は、この対角要素を単純に取ってベクトル[292, 528]を生成します。
連結関数 || は、数式がデータ テーブルのその行の 2x2 対称行列と 2x1 転置行列を乗算できるようにするためにあります。たとえば、行 1 の場合、Vec Quadratic は Vec Quadratic( [2.33333333333333 -1, -1 0.5], [1] || 1 ) のようになります。これは、Vec Quadratic( [2.33333333333333 -1, -1 0.5], [1,1] ) と同じです。行 1 の [1]||:X は [1 1] のようになり、行 2 は [1 2] のようになります。数式では、:X の単一行エントリを取得して行列に変換する必要があるため、数式で [1]||:X がそれを行っています。
これが意味を成すといいのですが。
幸運を!、
DS