Fix categorical data so that it uses strings but can use NaN or None to indicate no category