What is meta? ×
Meta Stack Exchange is where users like you discuss bugs, features, and support issues that affect the software powering all 134 Stack Exchange communities.

This isn't really a question but I thought that it may interest people here to see that SO reputation seems to follow Benford's law

Here's the data I got from statoverflow (I omitted accounts with reputation = 1)

SO-Graph

Compare this to Benford's predictions

Wikipedia's graph

share|improve this question
5  
What's up with all the 3s? A I smell a conspiracy. –  Stu Thompson Sep 21 '09 at 11:02
    
I don't quite know why you've used a completely different graph since I commented ... –  please delete me Sep 21 '09 at 11:06
    
@Silky, it's exactly the same graph but with probability rather than absolute numbers so that it's easier to compare to the Wikipedia one. –  Motti Sep 21 '09 at 12:05
    
Motti: But it makes my comment look a little more silly. I wouldn't be claiming that it's obvious that the most common prefix is '3'. Though I hardly need another reason to be downvoted on this site. –  please delete me Sep 21 '09 at 12:15
    
@Silky, I don't see any of your comments that is made to look silly by changing the values on the graph (have you deleted it?). Please accept an upvote on your answer as compensation for any wrongs I may have caused you. –  Motti Sep 21 '09 at 12:31
    
I don't care about votes; My comment was the short version of "of course a small number of people will have the majority of votes"; the graph changes what you're reporting on. But really, I've already spent too much time on this. Anyone cares to see what I'm talking about they can click your edit and see the old graph. –  please delete me Sep 21 '09 at 12:33
1  
Silky I think you should read the article about Benford's law you seem to be missing the point (the two graphs I posted are exactly the same data with different labels). –  Motti Sep 21 '09 at 12:44
    
Motti: I can't even begin to imagine how you think they have the same data. –  please delete me Sep 21 '09 at 13:09
3  
@silky: his first graph didn't say anything about how many users had the most votes. it showed how many users had rep starting with a certain digit. the second graph shows what percentage of users have rep starting with a certain digit. In both cases, it is exactly the same data. –  Kip Sep 21 '09 at 14:56
    
Kip: Rereading it, it isn't clear at all what it shows; I assumed it was rep. I can no longer express how much I don't care. –  please delete me Sep 21 '09 at 22:54
2  
I think 0 feels left out of your analysis. –  Andrew Moore Feb 8 '10 at 6:07

5 Answers 5

up vote 29 down vote accepted

I think I have an explanation for the anomaly at 3. I queried not just based on first digit, but also on number of digits.

Here is the query I used:

SELECT LEFT(reputation, 1) AS first_digit
     , LENGTH(reputation) AS num_digits
     , COUNT(*)
FROM users
GROUP BY first_digit, num_digits
ORDER BY first_digit ASC, num_digits DESC

After massaging that a bit, you get this as your raw data:

1st Digit   5 digits   4 digits   3 digits   2 digits   1 digit
        1        190       2504       7049      12838     52486
        2         30        876       2973       7180         0
        3         11        485       2150       4634      2623
        4          7        274       1578       3074         0
        5          0        157       1114       2336       301
        6          1        128        899       1972         4
        7          1         84        687       1481       146
        8          0         62        618       1305         0
        9          1         40        446       1141       447

The 1-digit reps throw things off. In particular, there is a large number of users with rep of 3, because that is your rep if you ask one question, get no upvotes, and accept some answer. Also, due to a bug, if a new user receives a downvote, and then the downvote is revoked, they will have rep=3.

Let's look at that in chart form. First, here is all the data. Clearly the users with rep of 1 are anomalous.


Now, let's filter out those users with rep=1. Now we can see that there are anomalous spikes for rep=3 and rep=9. (Rep=9 happens with 1 upvote and one downvote.)


Finally, lets filter out all users with one-digit rep. We get a result that is much closer to an ideal Benford's Law distribution now.

share|improve this answer
2  
+1 - Excellent analysis –  John Rasch Sep 21 '09 at 19:50
10  
I'm tempted to -1 for not drawing freehand circles on your graphs. –  Super Long Names are Hilarious Sep 22 '09 at 3:06
    
+1 Nice. –  Simon P Stevens Sep 22 '09 at 9:33
1  
The anomaly at 3 is probably due to new posters being down-voted and then having that down-vote removed. This result in them getting a rep of 3 because 1 - 2 = 1 (you can't go below 1 rep) and then 1 + 2 = 3 –  ChrisF Feb 7 '10 at 12:04
    
@ChrisF thanks, i forgot about that glitch. –  Kip Feb 7 '10 at 23:05

Could the excess number of 3s as starting digits be related to the fact that 3000 is the required rep level for closing/reopening posts, which is kind of the last stepping point before 10k. If people are motivated by achieving certain targets I would imaging that motivation to "level up"/gain rep falls off after 3000 as the next target is so far away leaving a larger number of people in the low 3000s.

share|improve this answer
    
or the people that have posted a single question, which has gained three upvotes... –  Rowland Shaw Sep 21 '09 at 11:18
6  
@Rowland. I would guess that the people who have only posted 1 question with 3 up votes is just as likely as 2 or 4 up votes, therefore not effecting the distribution. Whereas the number of people in the 2000-2999 range and 4000-4999 ranges are less likely because those below 3000 have motivation to gain rep so work harder, but those above 3000 have less motivation because the next target (10k) is so far away so work less. I'd be interested to see how the distribution builds up within the categories of starting digits and whether the 3 category is indeed made up of excess 4 digit users. –  Simon P Stevens Sep 21 '09 at 11:38
    
3 seems like a good place to run out of steam, whether it's "3" (user with no upvotes at all, but has accepted an answer), 30s for a newbie that doesn't engage beyond an initial post which gathers a handful of votes, 300s where people are trying to grow, but aren't quite proficient (this is where I am on SF, as it happens). Of course the 3000s is a longer road, and as you say, there's a long way until the next milestone in terms of "rewards" –  Rowland Shaw Sep 21 '09 at 11:52
    
Perhaps it would be helpful if the graphs were posted with each bar divided up into the number of digits in the number. I could just go and look at the Users pages, but I can't be arsed. –  Tom Hawtin - tackline Sep 21 '09 at 16:58
1  
@Simon P Stevens: It looks like the anomaly at 3 comes from people with a rep of exactly 3 (one question, no upvotes, with accepted answer). There is also a smaller anomaly caused by users with rep of 9 (one upvote, one downvote). See my answer to this question for more info. –  Kip Sep 21 '09 at 17:12

This suggests that log(reputation) is more-or-less uniform. We can test this hypothesis directly since I understand the data's available.

The next question is then: why is log(reputation) uniform? It makes sense that fewer people would have high rep that low rep, of course (since rep takes effort), but a uniform distribution of reputation seems equally likely. Or is there some mechanism through which the people who have reputation are more likely to gain more rep than people with fewer to start with? A sort of Matthews effect?

share|improve this answer

If you haven't seen it before, Benford's law is pretty interesting, and seems on the face of it rather amazing. It takes a bit of thought to see how it arises, but once you do, it isn't at all surprising to see it appear in the Stack Overflow reputation graph. I highly recommend this well-explained article that goes through the details with a minimum of maths, and with some great examples.

Quoting from that article:

We can conclude that data from any distribution will tend to be 'Benford', as long as the distribution spans several integers on the log_10 scale - several orders of magnitude on the original scale - and as long as the distribution is reasonably smooth.

We have reputation spanning 1 - 100,000. That's 6 orders of magnitude. If we didn't see something close to Benford's law, that would be really interesting!

share|improve this answer

May I direct everyone reading/contributing to this question to "How addicted to StackOverflow are you?"

The answer "I download rep data and compare it to Benford's law" still hasn't been given as an answer yet.

share|improve this answer
2  
That oversight has been rectified meta.stackexchange.com/questions/11652/… –  Motti Sep 21 '09 at 19:04
    
Ouch, it already has two down-votes. Sorry about that. I upvoted to offset at least one of them. =) –  JohnFx Sep 21 '09 at 23:48

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .