Galera, estava com um array de tamanho 150 onde  tinham matrizes 1x1. Sendo que em alguns tinham NA. Dentro de minha função criei uma variável auxliar para identificar esses NA. Fiz do seguinte modo:<div><br></div><div><div>
aux<-NULL</div><div><span class="Apple-tab-span" style="white-space:pre">      </span>for(t in 1:n){</div><div><span class="Apple-tab-span" style="white-space:pre">               </span>if(<a href="http://is.na">is.na</a>(Y[,,t])==TRUE){</div>
<div><span class="Apple-tab-span" style="white-space:pre">                      </span>aux[t]<-0</div><div><span class="Apple-tab-span" style="white-space:pre">         </span>}else{</div><div><span class="Apple-tab-span" style="white-space:pre">                       </span>aux[t]<-1</div>
<div><span class="Apple-tab-span" style="white-space:pre">              </span>}</div><div><span class="Apple-tab-span" style="white-space:pre">    </span>}</div><div><br></div><div><br></div><div>Ao identificar, o aux terá tamanho de 150, de 0 e 1.</div>
<div><br></div><div>Feito essa verificação, estou pulando para a parte debaixo que é assim:<br><br></div><div><div>for(t in 1:n){</div><div><span class="Apple-tab-span" style="white-space:pre">           </span>if(aux[t]==1){<span class="Apple-tab-span" style="white-space:pre">      </span></div>
<div><br></div><div><span class="Apple-tab-span" style="white-space:pre">                                     </span>B<-matrix(Z[,,t],ncol=m)</div><div><span class="Apple-tab-span" style="white-space:pre">                                  </span>U[,,t]<-Y[,,t]-B%*%At[,,t]-D[,,t]</div>
<div><span class="Apple-tab-span" style="white-space:pre">                                      </span>F[,,t]<-B%*%Pt[,,t]%*%t(B)+H[,,t]</div><div><span class="Apple-tab-span" style="white-space:pre">                                 </span>K<-T[,,t]%*%Pt[,,t]%*%t(B)%*%ginv(F[,,t])</div>
<div><span class="Apple-tab-span" style="white-space:pre">                                      </span>L[,,t]<-T[,,t]-K%*%B</div><div><span class="Apple-tab-span" style="white-space:pre">                                      </span>At[,,t+1]<-T[,,t]%*%At[,,t]+K%*%U[,,t]+C[,,t]</div>
<div><span class="Apple-tab-span" style="white-space:pre">                                      </span>Pt[,,t+1]<-T[,,t]%*%Pt[,,t]%*%t(L[,,t])+R[,,t]%*%Q[,,t]%*%t(R[,,t])<span class="Apple-tab-span" style="white-space:pre">              </span></div><div><br></div>
<div><span class="Apple-tab-span" style="white-space:pre">                              </span>}else{</div><div><span class="Apple-tab-span" style="white-space:pre">                                       </span>At[,,t+1]<-T[,,t]%*%At[,,t]+C[,,t]</div><div><span class="Apple-tab-span" style="white-space:pre">                                        </span>Pt[,,t+1]<-T[,,t]%*%Pt[,,t]%*%t(L[,,t])+R[,,t]%*%Q[,,t]%*%t(R[,,t])<span class="Apple-tab-span" style="white-space:pre">      </span></div>
<div><span class="Apple-tab-span" style="white-space:pre">                              </span>}<span class="Apple-tab-span" style="white-space:pre">           </span></div><div><span class="Apple-tab-span" style="white-space:pre">     </span>}</div><div><span class="Apple-tab-span" style="white-space:pre">    </span>return(list(At,Pt))</div>
</div><div><br></div><div><br></div><div><br></div><div>Só que o R está dando um erro que não estou conseguindo resolver, o erro é esse:  Erro em svd(X) : infinite or missing values in 'x'</div></div><div><br></div>
<div><br></div><div><br></div><div><br></div><div>Abraços!</div>