According to me, people do a lot of shopping (buying things that aren't necessery at all) because it's a way of trying to get satisfation, apart from their income.
Nowadays people are more and more busy and stressed, and their relationships with others more and more frail and superficial, so they need something that can fulfil their "empty" lives and shopping does this, it makes you feel better (even though for a little).
Moreover, other main reasons that lead to unnecessary shopping are: fashion and advertaising.
Advertising pushes people to need useless things or clothes that not even fit them just because is what the current fashion calls "must have".
As well as this, better life conditions, spreading of cheaper shops, online shops and credit cars make it very easy and within (almost) everybody reach.