Starting from Julia 0.7, missing values are represented using the new missing
object. Resulting from intense design discussions, experimentations and language improvements developed over several years, it is the heir of the NA
value implemented in the DataArrays package, which used to be the standard way of representing missing data in Julia. missing
is actually very similar to its predecessor NA
, but it benefits from many improvements in the Julia compiler and language which make it fast, making it possible to drop the DataArray
type and using the standard Array
type instead2. Drawing from the experience of existing languages, the design of missing
closely follows that of SQL’s NULL
and R’s NA
, which can be considered as the most consistent implementations with regard to the support of missing values. Incidentally, this makes it easy to generate SQL requests from Julia code or to have R and Julia interoperate.