Moyenne harmonique avec valeur nulle


11

Comment la moyenne harmonique gère-t-elle les valeurs nulles? qu'est - ce que la moyenne harmonique de {3, 4, 5, 0} depuis ?1/0=


3
Eh bien, pour vos données, la moyenne harmonique n'est pas définie! Pourquoi voulez-vous utiliser une moyenne harmonique? Vous devez donner des détails sur ce que vous voulez faire. La moyenne harmonique est principalement utilisée pour les situations où aucune observation zéro n'est logiquement impossible, alors qu'est-ce qui produit vos zéros? troncature? de vrais zéros? La réponse dépendra!
kjetil b halvorsen

J'ai un tas de chiffres et j'introduis des "caractéristiques" à leur sujet dans un classificateur de type de réseau neuronal. Ce que j'ai fait, c'est exclure les valeurs nulles.
Dez Udezue

Réponses:


12

Tout comme la moyenne géométrique de n'importe quoi et est 0 , il est généralement naturel de définir la moyenne harmonique de n'importe quoi et 0 d'être 0 .0000

Une interprétation physique de la moyenne harmonique est que si vous avez des résistances en parallèle, la résistance totale est comme si chaque résistance avait la résistance moyenne harmonique. Si l'une des résistances n'a pas de résistance, il n'y a pas de résistance sur tout (un court), et c'est la même chose que si toutes les résistances n'avaient pas de résistance.

Si pour une raison quelconque vous envisagez les moyennes harmoniques des nombres de sorte que certains soient négatifs et certains positifs, alors il pourrait être préférable de dire qu'une moyenne harmonique de avec elle-même n'est pas définie. Cependant, dans les applications que je connais pour la moyenne harmonique, elle est utilisée sur des nombres non négatifs.0


1
L'analogie des résistances est utile.
Amrinder Arora

3

Si vous travaillez dans un langage qui prend correctement en charge Infinity dans les calculs, comme R, vous pouvez définir la moyenne harmonique comme suit:

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

Ensuite, il traitera correctement les zéros de manière naturelle:

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

3
C'est une question d'opinion, mais je ne pense pas que cela supporte l'infini "correctement".
Neil G

1
Qu'est ce qui ne va pas avec ça? Il utilise simplement 1/0==Inf, et 1/Inf==0, qui est l'arithmétique IEEE standard.
Ken Williams

La raison pour laquelle l'IEEE a permis cela était que les calculs réguliers peuvent être insuffisants et de cette façon au moins vous récupérez un signe de votre calcul. Je pense qu'il est préférable que les langues lèvent des exceptions lors de la division par zéro et permettent à l'utilisateur de les ignorer explicitement. Si le calcul qui a conduit à votre x était une soustraction (ab), par exemple, alors votre résultat 1 / x est un non-sens.
Neil G

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

5
0111NuneN

0

L'algorithme DFLOW by EPA utilise les éléments suivants lorsqu'il n'y a aucune valeur:

μH=(je=1nT-n01/XjenT-n0)-1×nT-n0nT,

μHXjenTn0

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.