前提・実現したいこと
人の歩行動作のデータをprocGPAにて整列し,標準化を行った後,RのパッケージであるCANDPARA(PARAFAC)にて分析をかけ,その結果から元の整列後の座標点を再構築したい.
発生している問題・エラーメッセージ
座標点の再構築を行った後,整列後に行った標準化の際の標準偏差と平均を用いて標準化を元に戻しているが上手くいかない.
該当のソースコード
R
1k <- 57#標識点数 2m <- 3#次元数 3nf <- 50#フレーム数今回は50フレーム 4hik <- 288#フォルダ内の57個揃っているデータの数 5nfh <- nf*hik 6reclmtensor1 <- array(NA, dim=c(nf,(k*m),hik)) 7for ( i in 1:nrow(result(sol2)$scores[[1]]) ) { 8 for( j in 1:nrow(result(sol2)$scores[[2]]) ) { 9 for( h in 1:nrow(result(sol2)$scores[[3]]) ) { 10 tmp <- matrix(0,ncol=30) 11 for( n in 1:ncol(result(sol2)$scores[[1]])) { 12 tmp[,n] <- ((result(sol2)$scores[[3]][h,n]*result(sol2)$core[n])*result(sol2)$scores[[1]][i,n] * result(sol2)$scores[[2]][j,n]) 13 } 14 reclmtensor1[i,j,h] <- sum(tmp)#*sdlmd2[j] 15 } 16 } 17}
scores[1]は時系列の因子負荷量scores[2]は標識点座標の因子負荷量scores[3]には動作者の因子得点が入るようになっており,coreにはCANDPARAの結果である特異値ベクトルを入れて計算している.
試したこと
CANDPARAの因子数を増やして再構築をしている
補足情報(FW/ツールのバージョンなど)
扱っているデータは288人の歩行動作のデータでフレーム数が違うため50フレームでリサンプルをしたのちにprocGPAで整列している。
あなたの回答
tips
プレビュー