null values are usually numbers that are unlikely to occur
for example, yours appear to be nominal classes ie class 1 is meaningless when comparing it to class 2, they are just different, the number doesn't mean anything. A value of -9 or -99 or -999 or -9999 plus others go back a looooong time as null values in that sense.
Similarly if your data represented counts, in otherwords 1 and 2 now have meaning, 1 means you saw one ..., 2 means you counted two and 2 means that you counted twice as many as 1. -9 isn't possible, it doesn't mean count backwards, there is no such thing as a count of -9 ... counts are either 0 or positive OR!!! if you forgot to count something, you sure don't want to put in a 0 because that would imply you 'counted' that object and there were 0 found. -9 means, it wasn't done
Glad the Jake's worked out? or was it mine? so confusing