> The fallback label is just a string representation of the raw value, so it's safe to assume that.

Sorry, my statement is wrong with *just* using `value_labels`. You can see how the [get_label](https://github.com/cbmi/avocado/blob/master/avocado/models.py#L487-L494) method works.. which attempts to get the label then falls back to the unicode representation.

However, as you stated above, doing this for numbers could be a wasteful lookup. Admittedly, the API on DataField is not optimized for handling the various types. For now however, you can use the same logic as in `get_label` (don't use it directly since that would result in a lot of `value_labels` calls).