Ir ao conteúdo

Posts recomendados

Postado

Olá pessoal,

 

Estou trabalhando com regressão linear, e tenho que inverter matrizes. Algo muito curioso ocorreu nesse processo. Anexo planilha.

No bloco “A”, colunas D:H, tem uma matriz 5x5 e ao seu lado, colunas I:M sua inversa, calculada pela função Matriz.Inverso. No bloco “B” a mesma coisa.

 

As matrizes iniciais dos blocos A e B são iguais, como mostra o bloco C, que é a diferença entre A e B. As 2 matrizes foram geradas por 2 macros distintas, mas que deram 2 resultados iguais, ou pelo menos aparentemente.

 

Embora sejam iguais, as matrizes inversas são diferentes.

 

O curioso é que se editarmos (F2) e dermos Enter sem altar nada, nas células marcadas em verde, o resultado da matriz inversa se altera.

 

O que pode estar acontecendo?

 

Agradeço a quem puder tentar me ajudar.

 

Jimmy

 

Minimos quadrados teste matriz inversa 9.xlsx

Postado

Descobri onde está a diferença entre as 2 planilhas, embora olhando para o valor das células envolvidas aparentemente têm o mesmo valor.

As F13 e F19 têm o mesmo valor. Se colocamos em outra célula a fórmula   =F19-F13  o resultado é zero. Porém, se colocamos a fórmula   =ABS(F19-F13)   ai aparece uma diferença lá na 18ª casa decimal.

 

O mesmo ocorre com G18, G19, H17 e H18, que são as células cujos valores são menores que 0,1.

Falta agora descobrir como isso ocorre, e como fazer deixar de ocorrer....

Postado

Olá, @Jimmy 2

 

Isso ocorre provavelmente devido à forma com que o Excel (e a maioria dos programas) armazena e calcula números de ponto flutuante (veja em Aritmética de ponto flutuante pode fornecer resultados imprecisos no Excel).

E isso piora quando você trabalha com números extremamente grandes ou pequenos.

Por paradoxal que pareça, arredondar o número (por exemplo, para 16 casas) pode ajudar a diminui a imprecisão.

Alternativamente, existem alguns suplementos de terceiros que prometem resultados ultraprecisos, como o xlPrecision (http://precisioncalc.com/xlprecision.html)

  • Obrigado 1

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!