sasdata.data_util.formatnum module

Format values and uncertainties nicely for printing.

format_uncertainty_pm() produces the expanded format v +/- err.

format_uncertainty_compact() produces the compact format v(##), where the number in parenthesis is the uncertainty in the last two digits of v.

format_uncertainty() uses the compact format by default, but this can be changed to use the expanded +/- format by setting format_uncertainty.compact to False.

The formatted string uses only the number of digits warranted by the uncertainty in the measurement.

If the uncertainty is 0 or not otherwise provided, the simple %g floating point format option is used.

Infinite and indefinite numbers are represented as inf and NaN.

Example:

>>> v,dv = 757.2356,0.01032
>>> print format_uncertainty_pm(v,dv)
757.236 +/- 0.010
>>> print format_uncertainty_compact(v,dv)
757.236(10)
>>> print format_uncertainty(v,dv)
757.236(10)
>>> format_uncertainty.compact = False
>>> print format_uncertainty(v,dv)
757.236 +/- 0.010

UncertaintyFormatter() returns a private formatter with its own formatter.compact flag.

sasdata.data_util.formatnum.format_uncertainty_compact(value, uncertainty)

Given value v and uncertainty dv, return the compact representation v(##), where ## are the first two digits of the uncertainty.

sasdata.data_util.formatnum.format_uncertainty_pm(value, uncertainty)

Given value v and uncertainty dv, return a string v +/- dv.