There are many claims about existence of clusters of bugs or defects. A simple search reveals multiple results, for example: 1, 2, 3, 4, 5.
However, all the evidence cited is anecdotal and I could not find any concrete data to back this up. While my own experience does not contradict these claims, people love to see patterns even when there is none (even uniform distribution of bugs will produce clusters, and it might be easier to remember when you have to fix 10 bugs in one place rather than 10 unrelated things all over the codebase).
I am genuinely curious if this phenomenon indeed exists, but I could not find any objective or even semi-objective source (as in test, experiment, study, etc.) which would show that defect clustering really does happen.
Of course, I am fine with assuming bug clustering hypothesis as good practice (even if it is false, it won't hurt too much). On the other hand, concrete data could shed some light why it happens. Is it because of those days one has a terrible headache (for whatever reason)? Or maybe because some parts of the code are just hard and others are easy? Or perhaps it is the place of responsibility of those two engineers that don't like each other?
My question: Does defect clustering effect indeed exist? Is there any concrete non-anecdotal data that is best explained by this hypothesis?