2

Stastisically, how many votes (alternatively what score) does a question get per view?

Basically, votes/views. Or score/view. As an average for all questions (or a random sample of all questions) ever asked.

  • 1
    Absolute votes would be more useful... All sites on the network? The problem is that the data is worthless unless it's per-site. Different sites have vastly different voting culture. – Catija May 18 '16 at 18:11
  • 1
    I don't know what you're hoping to get out of this, but score/view at the least should be something you can get from SEDE per site. (I don't know if the count of votes is available there, but I think it is.) I think this would be a lot more representative on a per site basis than across the entire network, as you'll have some sites that are just getting started skewing the results to one end, then the large sites that have been around forever, like Stack Overflow, potentially skewing to the other end. – Kendra May 18 '16 at 18:12
  • @Catija Oh, OK. Maybe I should ask this in the meta of the sites I'm interested in? – Revetahw says Reinstate Monica May 18 '16 at 18:15
  • 1
    data.stackexchange.com – Mathieu Guindon May 18 '16 at 18:23
  • 1
    Mat - you may need to remove the www there :-) – Rory Alsop May 18 '16 at 18:42
  • No, I wouldn't do that... as Kendra points out, there's a great tool called SEDE (Stack Exchange Data Explorer). This should be able to answer your question... if you can find or write a search for it... One search can be applied to any site you like. – Catija May 18 '16 at 19:27
  • @Catija Cool. I'll look into that :) – Revetahw says Reinstate Monica May 18 '16 at 19:29
4

The following query gives those stats for Stack Overflow:

select sum(cast(scores as bigint)) as score
    ,  sum(cast(views as bigint)) as views
    ,  sum(cast(upvotes as bigint)) as upvotes
    , sum(cast(downvotes as bigint)) as downvotes
    , cast(sum(cast(upvotes as bigint)) as decimal)/ sum(cast(views as bigint)) as [upvotes/views]
    , cast(sum(cast(downvotes as bigint)) as decimal) / sum(cast(views as bigint))  as [downvotes/views]
    , cast((sum(cast(downvotes as bigint)) +sum(cast(upvotes as bigint)) ) as decimal)/ sum(cast(views as bigint))  as [total votes/views]
from (
select p.id as id
     , score as scores
     , viewcount as views
     , sum( case when v.votetypeid = 2 then 1 else 0 end) as upvotes  
     , sum( case when v.votetypeid = 3 then 1 else 0 end) as downvotes  
from posts  p
inner join votes v on v.postid = p.id
where p.posttypeid = 1 -- Q
and v.votetypeid in (2,3) -- upmod /downmod
group by p.id, score, viewcount
) allposts

Running it today gives the following output, showing upvotes/views, downvotes/views and totalvotes/views.

stats with views/votes

You can switch the site in SEDE if you want to run it for a different site.

You must log in to answer this question.

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