Because a lot of people who live on a fixed income like social security or disability simply don't have the privilege of being able to do so?
They often can't afford to live anywhere but a Food Desert, and often don't own a vehicle in a city with few public transit options. Things like this can severely limit their choices on which company to spend money.
The reality is poor people shop at Walmart because in a lot of cases they really can't afford not to. This is what people fighting against expansion of companies like Walmart twenty years ago said was going to happen. They will dominate with low prices until they've pushed out all other viable businesses, and then you'll be left with no choice but to spend your money with them. This was all on purpose at the corporate level. Not sure why you're blaming 20-30 years of corporate choices with very little pushback from city governments on the people who don't have other places to shop anymore.