Originally done for the purpose of identifying customer groups with distinctive behavior. You might find it useful as one of the approaches to analyze survey results with Likert scale (and other types of categorical data).
The process behind the code is described in this blogpost.
In brief, I followed the process below: