isfinite function in APL to check whether a numeric value is finite, meaning it’s neither positive infinity, negative infinity, nor NaN (Not a Number). The function returns true for any real number that has a well-defined, bounded value.
isfinite is essential for data quality checks. Division by zero, logarithm of a non-positive number, or other edge cases can produce infinity or NaN in your computed columns. Use isfinite to identify or filter these invalid values before aggregating or visualizing data.
For users of other query languages
If you come from other query languages, this section explains how to adjust your existing queries to achieve the same results in APL.Splunk SPL users
Splunk SPL users
Splunk SPL doesn’t have a direct
isfinite() function. You typically check for null or use isnum() to verify that a value is a valid number, but these checks don’t cover infinity.ANSI SQL users
ANSI SQL users
Standard SQL does not define an
ISFINITE() function. You typically check for IS NOT NULL and whether the value falls within a valid range, but you cannot directly detect infinity in most SQL dialects.Usage
Syntax
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
x | real | Yes | The numeric value to check. |
Returns
true if x is a finite real number (not infinity and not NaN). false otherwise.
Example
Useisfinite to check whether a computed value is finite before using it in aggregations.
Query
| _time | id | req_duration_ms | log_duration | is_valid |
|---|---|---|---|---|
| 2024-11-14 10:00:00 | user-1 | 120.0 | 4.7875 | true |
| 2024-11-14 10:01:00 | user-2 | 0.0 | -inf | false |
| 2024-11-14 10:02:00 | user-3 | 80.0 | 4.3820 | true |
List of related functions
- isinf: Returns
trueonly for infinite values. Use it when you want to distinguish infinity from NaN. - isnan: Returns
trueonly for NaN values. Use it when you want to detect only Not-a-Number results. - isint: Returns
truefor integer values. Use it to check whether a numeric value is an integer rather than a floating-point result. - log: Returns the natural logarithm. Combine with
isfiniteto validate log computations on potentially non-positive inputs. - gamma: Returns the gamma function. Use
isfiniteto filter out overflow results when computinggammaon large values.