Média harmônica com valor zero


11

Como a média harmônica lida com valores zero? qual seria o significado harmônico de {3, 4, 5, 0} desde ?1/0=


3
Bem, para seus dados, a média harmônica não está definida! Por que você deseja usar uma média harmônica? Você deve dar detalhes do que você quer fazer. A média harmônica é usada principalmente para situações em que zero observação é logicamente impossível, então o que está produzindo seus zeros? truncamento? zeros verdadeiros? A resposta vai depender!
Kjetil b halvorsen

Eu tenho vários números e estou alimentando "características" sobre eles em um classificador de tipo de rede neural. O que eu fiz foi excluir valores zero.
Dez Udezue 19/09/12

Respostas:


12

Assim como a média geométrica de qualquer coisa e é 0 , geralmente é natural definir a média harmônica de qualquer coisa e 0 como 0 .0000

Uma interpretação física da média harmônica é que, se você tiver resistores em paralelo, a resistência total é como se cada resistor tivesse a resistência média harmônica. Se um dos resistores não tiver resistência, não haverá resistência geral (um curto), e é o mesmo que se todos os resistores não tivessem resistência.

Se, por algum motivo, você estiver considerando as médias harmônicas dos números, de modo que algumas sejam negativas e outras positivas, talvez seja melhor dizer que uma média harmônica de consigo não está definida. No entanto, nas aplicações que conheço pela média harmônica, ela é usada em números não negativos.0


11
A analogia do resistor é útil.
Amrinder Arora 9/04/19

3

Se você estiver trabalhando em um idioma que suporte o Infinito corretamente nos cálculos, como R, poderá definir a média harmônica da seguinte forma:

harm <- function(x) 1/mean(1/x)

Então, ele lidará corretamente com os zeros de maneira natural:

> harm(c(6, 2, 9, 4, 3, 1))
[1] 2.541176
> harm(c(6, 2, 9, 4, 0, 3, 1))
[1] 0

3
É uma questão de opinião, mas não acho que isso apóie o infinito "adequadamente".
Neil G

11
O que há de errado com isso? É apenas usando 1/0==Inf, e 1/Inf==0, que é a aritmética padrão do IEEE.
Ken Williams

A razão pela qual o IEEE permitiu isso foi que os cálculos regulares podem ser insuficientes e, dessa forma, pelo menos você recupera um sinal do seu cálculo. Eu acho que é melhor para os idiomas criar exceções na divisão por zero e permitir que o usuário as ignore explicitamente. Se o cálculo que levou ao seu x foi uma subtração (ab), por exemplo, seu resultado 1 / x é um absurdo.
Neil G

10=1=0
1=11=(0)(0)=(00)=0=1=,

5
0111NaN

0

O algoritmo DFLOW by EPA usa o seguinte quando há valores zero:

μH=(i=1nTn01/xinTn0)1×nTn0nT,

μHxinTn0

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.