A credit company extends credit to the consumer and assigns a rating (interest rate) that equates to their determination of the risk of loaning money to that consumer. High use, low use, high end to low end stores, or vice versa all are behavior changes that are analyzed by specialized personnel in the credit companies to make judgements as to whether or not the risk rating needs to be adjusted.
In this instance someone going from high to low type stores would be a red flag the consumer is concerned about their finances. Hence, the credit company figures they better jack up the rate and get some more while the getting is good.
Of course we here on this forum would argue the consumer in question saw the light and decided to get the same value for less at WalMart. But you need to rememember this is a game of stat's and numbers. The stat's and numbers say seven out of ten are living paycheck to paycheck, have $8K - $10K in consumer debt and have an average of 10 loans per household. So the credit card companies play the numbers and the numbers say this person is in trouble.
There are many who have plenty of money in the bank, don't borrow, own what they have (yes even the house) and have no (as in none) FICO score. These folks are dinged by the insurance companies who view no to low scores as an indication that this person is more likely to file a claim than someone who has a high FICO score. Again, they play the seven out of ten game and a low to no score tells them there is trouble afoot. In most cases the higher premium that comes with no score is minimal and those that have no score choose not to participate and this is a small price to pay. Besides, a small premium increase is not felt much by the no-debt (at all) person as you can imagine.
Fascinating how the numbers run things and how the consumer gets caught up in it with little to no knowledge we are being judged, analyzed and in a lot of cases played.