Very strange effect in Google serp

Whilst doing some keyword research for additional pages, I noticed something very strange.
The search for boiler repair discounts south London came back with 2,470,000.
When I added the word “for” between discounts and south, the result was the same: 2,470,000. Now I know that Google pays little or no attention to “non-words” like articles and prepositions. This is why I was utterly surprised when the count went from 2,470,000 to 175,000 when I replaced “for” by “in”.
I had expected it to make no difference at all, or possibly a slight difference. How can changing one preposition for another make a 14 times difference, when deleting the first prepostition makes no difference at all??? :confused:

Google is trying to improve its “natural language” processing, so that it can answer questions better. While it doesn’t include words like ‘in’ and ‘for’ in its indexing, I can imagine that they could affect the natural language processing … so when it sees “<something> in <placename>” it looks for pages that appear to be more specifically located in and around the relevant place name, whereas “<something> <placename>” it may treat the place name more like a general query term rather than using it to localise the search.

Of course, in practical terms the difference between 180k and 2.5m results is nil – to be honest once you get above 100 it doesn’t really make any odds, what matters is who is taking the top 5–10 spaces and what order they’re in.

That is exactly what I find so strange: there is NO difference between “<something> in <placename>” and “<something> <placename>”, but MASSIVE difference between “<something> IN <placename>” and “<something> FOR <placename>” .
I know that it makes no difference whether you ranks as #100 or as #999 in terms of traffic, but the huge difference beween changing the two prepsitions must mean something.