私はこの問題を抱えています。私は、次の乗算の結果を得ることができない。Oracleデータベースとutl_nlaを使用して転置行列に掛け算を行う方法
X^t * X
Xがm = 36行n = utl_nla_array_dblデータ型で表される3列のM * nの行列です。データはテーブルから始まり、単純なpl/sqlコードでコピーされます。
私の問題を解決するために、方法utl_nla.blas_gemmを選択しました。これは行列 - 行列法で、行列 - ベクトル法としてのutl_nla.blas_gemvとは対照的です(私はそれを得ました。その行列Xにベクトルyを掛けて、正しい結果を得られました)。
ここに関連するコードがあります。このコードは正しい次元(3X3)の行列を出力しますが、その中にはちょうどゼロが入ります。それが明確に私のハードコーディングされたほとんどのパラメータを作成するには:
utl_nla.blas_gemm(
transa => 'T',
transb => 'N',
m => 3,
n => 3,
k => 36,
alpha => 1.0,
a => X,
lda => 3,
b => X,
ldb => 3,
beta => 0.0,
c => XtX,
ldc => 3);
変数XTXは型utl_nla_array_dblでもあり、その結果を保持することです。
私が間違っていることを知っていますか?私は完全に立ち往生しており、ウェブ上の他の場所ではヘルプを見つけることができないので、すべての貢献に感謝します。
試していただきありがとうございますが、これはトリックを行うことはありません! 次のエラーがacutally私驚きないthrowns、取得:Zeile 1 FEHLER:\t \t \t \t ORA-20005:のための不正な引数:マトリックス(LAST = 108メートル= 3 N = 36 LDA = 36) \t \t \t \t ORA-06512: "SYS.UTL_NLA"、Zeile 265 \t \t \t \t ORA-06512で "SYS.UTL_NLA" で、Zeile 6574 \t \t \t \t ORA-06512:Zeile 77に\t \t \t \t 他にもありますか? – Toby