Create a data frame with several self-defined types in Julia

what is the main difference between enumerate type and categoricalarray in terms of usage then?