|
if(condition, result_if_true, result_if_false)
|
Evaluates the condition and returns
result_if_true if the condition evaluates to true or
result_if_false if the condition evaluates to false.
condition must be a number. This function considers
0 and an empty string as
false
and everything else (including NaN) as
true.
Booleans convert to 0 (false) and 1 (true).
You can return the none constant
from this function to discard the output for a particular condition. This
means you can filter out data points that don't meet a condition. For more
information, see Filter data points.
Examples
-
if(0, x, y) returns the variable
y.
-
if(5, x, y) returns the variable
x.
-
if(gt(temp, 300), x, y) returns the variable
x if the variable temp is greater than
300.
-
if(gt(temp, 300), temp, none) returns the variable
temp if it's greater than or equal to 300,
or none (no value) if temp is less than
300.
We recommend that you use UFCS for nested conditional functions where
one or more arguments are conditional functions. You can use
if(condition, result_if_true) to evaluate a condition and
elif(condition, result_if_true, result_if_false) to evaluate
additional conditions.
For example, you can use if(condition1,
result1_if_true).elif(condition2, result2_if_true,
result2_if_false) instead of if(condition1, result1_if_true,
if(condition2, result2_if_true, result2_if_false)).
You can also chain additional intermediate conditional functions. For
example, you can use if(condition1, result1_if_true).elif(condition2,
result2_if_true).elif(condition3, result3_if_true,
result3_if_false) instead of nesting multiple if
statements, such as if(condition1, result1_if_true, if(condition2,
result2_if_true, if(condition3, result3_if_true
result3_if_false))).
You must use elif(condition, result_if_true,
result_if_false) with UFCS.
|