A general approach for modelling individual choices