This is not exactly an Odoo question, however, It's also not completely off topic, as odoo can help you to create your own marketing mechanisms for finding your target audience, or to forward deals or products depending on people preferences, or personalities, if you create a way to gather that information in the first place.
Personality tests or MBTI analysisare two valid methods and one way for cataloguing your clients, could be for instance by using the Survey's modules, and let your clients answer specific answers.
With Surveys, you can define your customer's personalities, but it's extremely important to be honest and clear about why you collect that data. Honesty is always appreciated by your clients,
Gathering user information without their consent might throw you into legal procedures against you and your company.
I you want the surveys to be accurate, you must find professional help so they can create the best questions and scoring systems to catalog your clients in the best way possible, reducing mistakes, false positives, wrong assumptions, etc...
Notice that this will never be accurate, and doing it depends on the customer's will to participate in those surveys, which is never easy, and the number of participants may vary depending on how much they enjoy your business.
Throw away some future discounts on their next purchase, might be a good strategy to increase the number of people that enroll in the process...
A different approach can be regarding the types of purchases your clients do. For instance, if they buy a table, they might want a chair or a cover for the table, or they can probably be interested in other house appliances.
This is more of a "related purchase" option, that do not directly catalog customers, but you find products related to the ones your client purchased before.
This can be tricky, and I see many big stores failing to deliver good options for their clients, as it's never completely clear, what is a good option for each client, as there is not two clients with the same needs, but you can probably relate clients that did similar purchases, and what was the most common option between them.
Eg: When you buy a Desktop PC; you probably buy a mouse and keyboard with it. If the Desktop is a tower PC (without a screen), you probably try to add a good screen into the deal or upsell a complete bundle with all the necessary components.