While I am very sympathetic to Nick's desire to store missing values in
matrices, I was not aware of the above and it should be treated as a bug --
something we at StataCorp need to fix -- and not a feature.
What is in fact being stored in the matrix is a NaN and, in the -generate-
follow on -- where missing values are expected -- Stata's NaN protection code
is detecting the NaN and converting it to a missing value. Somehow that NaN
snuck through matrix assignment, however, and unfortunately, the other matrix
routines are not up to dealing with it.
What precisely is a NaN? And does it have any connection with missing
values, or with the "magic number" 1e300 mentioned in -[R] tabstat-? I
can't find any reference to NaNs in -[R] matrix define-.