cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Choose Language Hide Translation Bar
SophieC32
Level I

Problème de grande valeur numérique

Bonjour,

 

J'ai un soucis de trop grande valeur numérique. J'ai une table JMP , avec dans une colonne des valeurs continues X (ce sont des LogWorths), et dans la colonne suivante une opération sur ces valeurs : Y = 6 * X (par exemple).

Le problème est que j'ai dans certains cas des valeurs très importantes : X =  5.1791e+307 

Dans ce cas, Y = 6 * X me donne une valeur manquante,comme s'il n'arrivait pas à calculer 6 * 5.1791e+307  ... 

 

Avez-vous déjà rencontré ce problème ? Si oui comment le résoudre ?

 

Bonne journée

5 REPLIES 5
jthi
Super User

Re: Problème de grande valeur numérique

Maximum number you can use seems to be ~1.797...+308 before it rolls to missing value (Maximum value for double-precision-floating-point?). Without knowing what you are doing and how your data otherwise looks I can just give some ideas about what you could do:

  • Why do you have so large numbers? What do they mean? Could you do some sort of conversion (drop exponent, divide with some number, log...)?
-Jarmo
SophieC32
Level I

Re: Problème de grande valeur numérique

 

I have several logworth values X1, X2, X3 and I aggregate these logworths into a score in our algorithm context this way:

 

Score = (6*X1 + 3*X2 + X3)/10 .

 

We calculate this way because we want to give more importance to X1. A provisional solution we found for the moment is to first divide by 10 and then sum as indicated above... These cases of extreme values are rare though, because it means that the p-values are infinitely small.

Re: Problème de grande valeur numérique

The Log Worth is the -Log10( p-value ), so these large numbers are extremely small p-values. What is the meaning of 6 * Log Worth? How will you use it? Is this value the same as the Low Worth of p^6?

SophieC32
Level I

Re: Problème de grande valeur numérique

I have several logworth values X1, X2, X3 and I aggregate these logworths into a score in our algorithm context this way:

 

Score = (6*X1 + 3*X2 + X3)/10 .

 

We calculate this way because we want to give more importance to X1. A provisional solution we found for the moment is to first divide by 10 and then sum as indicated above... These cases of extreme values are rare though.

Craige_Hales
Super User

Re: Problème de grande valeur numérique

If any of the X1, X2, X3 values are in the neighborhood of E+300, adding a value less than E+285 will not change the total because the double precision floating point values only represent about 15 significant digits. Kind of like this:

 

12345678901234500000000000000...00000000 // 15 digits at far left
+               1230000000000...00000000 // 3 more digits, but not overlapping
----------------------------------------
12345678901234500000000000000...00000000 // no change

This is always a problem with accumulating small numbers into big totals, not just at the limit of the exponent range.

 

I don't know anything about Log Worth and p-value, but for similar sounding problems, I'd say you'll want to think out what it means and test for the exceptional case so you can represent it correctly:

 

  • Does a huge value mean it isn't interesting and the other values determine the answer?
  • Or does a huge value completely determine the answer by itself?

 

Your current JSL suggests you want the huge value to override the small values, effectively ignoring them.

 

Craige