# MagicPlot Manual

Plotting and nonlinear fitting software

nan

# Differences

This shows you the differences between two versions of the page.

 nan [Sun Oct 31 19:06:53 2010]Gray nan [Sun Nov 8 12:21:24 2015] Line 1: Line 1: - ====== Missing Values (NaN) in Tables and Calculations ====== - In computing, NaN, which stands for Not a Number, is a value or symbol that is usually produced as a result of an operation on invalid input operands. For example, most floating-point units are unable to explicitly calculate the square root of negative numbers, and will instead indicate that the operation was invalid and return a NaN result. - An invalid operation is not the same as an arithmetic overflow (which returns a positive or negative infinity). Arithmetic operations involving NaN always produce NaN, allowing the value to propagate through a calculation so that errors can be detected at the end without extensive testing during intermediate stages. - - A NaN does not compare equal to any number or NaN. You can therefore test whether a variable has a NaN value by comparing it to itself: if ''​x == x''​ returns false (0), then x is a NaN code. - - ==== How does a NaN appear? ==== - - There are three kinds of operations which return NaN: - - Operations with a NaN as at least one operand, e.g. ''​1+NaN''​ - - Indeterminate forms - * Divisions ''​0/​0,​ ∞/∞, ∞/-∞, -∞/∞, -∞/​-∞''​ - * Multiplications ''​0*∞,​ 0*(-∞)''​ - * Power ''​1^∞''​ - * Additions ''​∞+(-∞),​ (-∞)+∞''​ and equivalent subtractions. - - Real operations with complex results - * Square root of a negative number - * Logarithm of a negative number - * Tangent of an odd multiple of 90 degrees (or //π///2 radians) - * Inverse sine or cosine of a number which is less than -1 or greater than +1. - - === Examples === - ^ Expression ​ ^ Result ​ ^ - | ''​0<​nowiki>​^​0'' ​ | ''​1'' ​      | - | ''​0/​0'' ​                  | ''​NaN'' ​    | - | ''​sqrt(-1)'' ​             | ''​NaN'' ​    | - | ''​1/​0'' ​                  | ''​Infinity'' ​ | - | ''​-1/​0'' ​                 | ''​-Infinity'' ​ | - - ===== NaN in MagicPlot Tables ===== - In MagicPlot NaN is also used to represent empty cells in [[table|Tables]]. - - Statistical functions ignore NaN values in Tables. - - ===== NaN in Expressions ===== - You can use predefined constants ''​NaN'',​ ''​nan''​ or ''​NAN''​ in expressions to specify NaN value. - - === Example === - * If you set a [[set_column_formula|Column Formula]] ''​if(col(B) >= 0, col(B), NaN)'',​ it will return only positive values from column B. Negative values are replaced with NaN value. You can use this expression to filter negative values if you do not want to use them in future calculations. Note that //​”Not-a-Number returned at row #”// warning can be shown for such expressions. 