Documentation

math.frexp() function

math.frexp() breaks f into a normalized fraction and an integral part of two.

It returns frac and exp satisfying f == frac x 2**exp, with the absolute value of frac in the interval [1/2, 1).

Function type signature
(f: float) => {frac: float, exp: int}

For more information, see Function type signatures.

Parameters

f

(Required) Value to operate on.

Examples

Return the normalize fraction and integral of a value

import "math"

math.frexp(f: 22.0)// {exp: 5, frac: 0.6875}

Use math.frexp in map

import "sampledata"
import "math"

sampledata.float()
    |> map(
        fn: (r) => {
            result = math.frexp(f: r._value)

            return {r with exp: result.exp, frac: result.frac}
        },
    )

View example input and output


Was this page helpful?

Thank you for your feedback!


New in InfluxDB 3.6

Key enhancements in InfluxDB 3.6 and the InfluxDB 3 Explorer 1.4.

See the Blog Post

InfluxDB 3.6 is now available for both Core and Enterprise. This release introduces the 1.4 update to InfluxDB 3 Explorer, featuring the beta launch of Ask AI, along with new capabilities for simple startup and expanded functionality in the Processing Engine.

For more information, check out:

InfluxDB Docker latest tag changing to InfluxDB 3 Core

On February 3, 2026, the latest tag for InfluxDB Docker images will point to InfluxDB 3 Core. To avoid unexpected upgrades, use specific version tags in your Docker deployments.

If using Docker to install and run InfluxDB, the latest tag will point to InfluxDB 3 Core. To avoid unexpected upgrades, use specific version tags in your Docker deployments. For example, if using Docker to run InfluxDB v2, replace the latest version tag with a specific version tag in your Docker pull command–for example:

docker pull influxdb:2