clip(X;Y;Z)
Returns NA
if X
is "out of
bounds", that is, X<Y
or X>Z
.
Otherwise, clip(X;Y;Z)
returns X
.
(Available as of version 18.37)
Syntax
clip(X;Y;Z)
Input
Argument | Type | Description |
---|---|---|
X |
any simple type | The value to be "clipped". |
Y |
any simple type | The minimum allowed value. |
Z |
any simple type | The maximum allowed value. |
Return Value
Returns NA
if X
is "out of bounds",
that is, less than the minimum (Y
) or greater than
the maximum (Z
). Otherwise,
clip(X;Y;Z)
returns X
.
clip(X;Y;Z)
is the equivalent of
if(between(X;Y;Z);X;na)
.
Sample Usage
value |
min |
max |
clip(value;min;max) |
---|---|---|---|
2 | 1 | 3 | 2 |
2 | 3 | 1 | NA |
1.5 | 1 | 3 | 1.5 |
1.5 | 2.5 | 3.1 | NA |
1.5 | 1.2 | 3.1 | 1.5 |
'bat' | 'bar' | 'baz' | 'bat' |
'bag' | 'bar' | 'baz' | NA |
'foo' | 'bar' | 'baz' | NA |
3 | 'foo' | 'bar' | NA |
3 | 4 | 'foo' | NA |