I have just read the documentation on missing values and while I can’t comment on performance issues I have found it very intuive. The documentation on missing starts as:
Julia provides support for representing missing values in the statistical sense, that is for situations where no value is available for a variable in an observation, but a valid value theoretically exists.
Propagation on mathematical operations, behavior in equality, comparison and logical operators are a natural extension of this definition and they make intuitive sense. My question is this: The result of the following operation
0 * missing is
missing. This also makes sense if the missing object has a theoretical value of any data type. What if we have a missing value yet theoretically we know it should be a real or integer number. Then the result of the above operation should be
0. Is there any way to impose a data type such as
Float64 on the
missing object? If not is this a valid and intuitive request?
For example a
missing(Float64) object should behave as the following in these two operations:
missing(Float64) * 0 should yield
missing(Float64) * 1 should yield