10/01/13 08:33:26
追記です。問題の非負値行列遠視分解ですが、変数で割り算をしてるのはここだけ↓です。
h=matrix(array(h)*array(hn)/array(hd))
…
w=matrix(array(w)*array(wn)/array(wd))
hdとwdをprintするようにしてみましたが、
[[ 0.02011069 0.02977744 0.02906954 ..., 0.02407994 0.02889659
0.02915037]
[ 0.01446606 0.02134596 0.02148551 ..., 0.01774882 0.02021706
0.02054283]
[ 0.01723484 0.02917753 0.02718492 ..., 0.02231427 0.02644232
0.0300849 ]
...,
[ 0.01144608 0.01790515 0.01683023 ..., 0.01426036 0.01676002
0.01819174]
[ 0.00750103 0.01223539 0.01129087 ..., 0.00934213 0.01090586
0.01224102]
[ 0.00230905 0.00371431 0.00355478 ..., 0.00290677 0.00371496
0.00378571]]
[[ NaN NaN NaN ..., NaN NaN NaN]
[ NaN NaN NaN ..., NaN NaN NaN]
[ NaN NaN NaN ..., NaN NaN NaN]
...,
[ NaN NaN NaN ..., NaN NaN NaN]
[ NaN NaN NaN ..., NaN NaN NaN]
[ NaN NaN NaN ..., NaN NaN NaN]]
と言う感じです。もとの行列に0が多すぎるのがいけないのかもしれませんが、
解こうとしている問題の性格上変えようがありません。どうにかならないでしょうか?