Ajuda em função para criação do Filtro De Kalman

Galera, estou criando uma função para realizar o Filtro de Kalman sendo que em certo momento, preciso transpor uma matriz, só que essa matriz está dentro de um array, logo não consigo realizar esta operação. Está dentro de um for, vou colar aqui a parte que está dando erro: ar_F[,,t]<-ar_Z[,,t]%*%ar_P[,,t]%*%t(ar_Z[,,t])+ar_H[,,t] Acredito que o erro esteja justamente em t(ar_Z[,,t]), pois é um array, e não uma matriz. Como poderia fazer isso? Abraços

Vc está fazendo pelo exercício de fazer ou pq nenhuma das implementações já existentes não te satisfazem? Que eu consiga lembrar de cabeça, o comando StructTS(), além dos pacotes FKF, KFAS, dlm, sspir, des, cts e Stem possuem o filtro já implementado... Sobre sua pergunta, estranho o q vc observa... Qual o resultado de dim(ar_Z)? Tenho a impressão de que o t() eh agnóstico ao fato de ser matriz ou array 2d... Mas posso estar enganado. b On Monday, 30 April 2012, Victor Eduardo wrote:
Galera, estou criando uma função para realizar o Filtro de Kalman sendo que em certo momento, preciso transpor uma matriz, só que essa matriz está dentro de um array, logo não consigo realizar esta operação. Está dentro de um for, vou colar aqui a parte que está dando erro:
ar_F[,,t]<-ar_Z[,,t]%*%ar_P[,,t]%*%t(ar_Z[,,t])+ar_H[,,t]
Acredito que o erro esteja justamente em t(ar_Z[,,t]), pois é um array, e não uma matriz. Como poderia fazer isso?
Abraços

Estou criando uma função para usar o Filtro de Kalman. É um exercício mesmo. rs Em 29 de abril de 2012 22:51, Benilton Carvalho <beniltoncarvalho@gmail.com>escreveu:
Vc está fazendo pelo exercício de fazer ou pq nenhuma das implementações já existentes não te satisfazem?
Que eu consiga lembrar de cabeça, o comando StructTS(), além dos pacotes FKF, KFAS, dlm, sspir, des, cts e Stem possuem o filtro já implementado...
Sobre sua pergunta, estranho o q vc observa... Qual o resultado de dim(ar_Z)? Tenho a impressão de que o t() eh agnóstico ao fato de ser matriz ou array 2d... Mas posso estar enganado.
b
On Monday, 30 April 2012, Victor Eduardo wrote:
Galera, estou criando uma função para realizar o Filtro de Kalman sendo que em certo momento, preciso transpor uma matriz, só que essa matriz está dentro de um array, logo não consigo realizar esta operação. Está dentro de um for, vou colar aqui a parte que está dando erro:
ar_F[,,t]<-ar_Z[,,t]%*%ar_P[,,t]%*%t(ar_Z[,,t])+ar_H[,,t]
Acredito que o erro esteja justamente em t(ar_Z[,,t]), pois é um array, e não uma matriz. Como poderia fazer isso?
Abraços
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.

Nesse caso, entao, faltou vc dar o resultado de dim(ar_Z), como pedi no email anterior... se for algo com 3 dimensoes, eu esperaria que o t() funcionasse... nao sendo esse o caso, vc precisa dar-nos um exemplo reproduzivel. b 2012/4/30 Victor Eduardo <victorduca08@gmail.com>:
Estou criando uma função para usar o Filtro de Kalman. É um exercício mesmo. rs
Em 29 de abril de 2012 22:51, Benilton Carvalho <beniltoncarvalho@gmail.com> escreveu:
Vc está fazendo pelo exercício de fazer ou pq nenhuma das implementações já existentes não te satisfazem?
Que eu consiga lembrar de cabeça, o comando StructTS(), além dos pacotes FKF, KFAS, dlm, sspir, des, cts e Stem possuem o filtro já implementado...
Sobre sua pergunta, estranho o q vc observa... Qual o resultado de dim(ar_Z)? Tenho a impressão de que o t() eh agnóstico ao fato de ser matriz ou array 2d... Mas posso estar enganado.
b
On Monday, 30 April 2012, Victor Eduardo wrote:
Galera, estou criando uma função para realizar o Filtro de Kalman sendo que em certo momento, preciso transpor uma matriz, só que essa matriz está dentro de um array, logo não consigo realizar esta operação. Está dentro de um for, vou colar aqui a parte que está dando erro:
ar_F[,,t]<-ar_Z[,,t]%*%ar_P[,,t]%*%t(ar_Z[,,t])+ar_H[,,t]
Acredito que o erro esteja justamente em t(ar_Z[,,t]), pois é um array, e não uma matriz. Como poderia fazer isso?
Abraços
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
participantes (2)
-
Benilton Carvalho
-
Victor Eduardo