If you read the details of the linked study, you can see that the criteria for "happiness" is different for contract plans vs. non-contract plans. Specifically, cost isn't factored into the "happiness" score for the contract plans, but it is factored in for non-contract plans. This would tend to artificially raise the happiness score for contract plans, since factoring in the high cost would likely lower the scores.
Also, battery life gets a much lower weight towards the score for non-contract plans than for contract plans. This is significant, because non-contract phones tent to have much better battery life than the flagship models.
What this proves is that you can make number say whatever you want them to say.