Adding a class "factor" will ensure that numeric codes are
given integer storage mode.
For historical reasons (these names are used when deparsing),
attributes ".Dim", ".Dimnames", ".Names",
".Tsp" and ".Label" are renamed to "dim",
"dimnames", "names", "tsp" and "levels".
It is possible to give the same tag more than once, in which case the
last value assigned wins. As with other ways of assigning attributes,
using tag = NULL removes attribute tag from .Data if
it is present.