But the score doesn't add up.
It's unclear from your question what you think your score should be or why you think it is incorrect. It appears to me to be absolutely correct.
From the post that you linked:
A tag score is basically the combined total of all the upvotes (+1) and downvotes (-1) you've accumulated on answers under that specific tag (votes on questions do not count). Acceptance of an answer doesn't have any weight in the score.
Note that the score is not based on reputation gained, but absolute votes.
As of this post, you currently have:
- answered 99 questions in the networking tag
- 44 of those have a net positive score (more upvotes than downvotes)
- 2 have a net negative score (more downvotes than upvotes)
- 55 have a score of 0 (either no upvotes/downvotes or an equal number of each)
- The sum of the scores in that tag is 77, which is what your profile currently reports. Of course, that's one more than two days ago when you posted this.
The questions with a non-zero score:
Side-note:
For those who want to run similar queries, here's how I did it using Nushell and the Stack Exchange API.
First, obtain the API method and arguments you need from the corresponding doc page. In this case, I needed a "user's questions", which is this page. The API site includes the ability for you to build the method with your arguments. I needed:
- Albin's (Super User ID: 201818) answers
- Change the site, of course, to Super User
- Edit the "Filter" to add in tags, title, and link
And the resulting URI/method it gives me is:
/2.3/users/201818/answers?order=desc&sort=activity&site=superuser&filter=!6VvPDzQHaquV_
With that, in Nushell:
def getStackAPIPageLoop [ baseUri:any page?:any --help (-h) ] {
let page = if ( $page == null ) {1} else {$page}
let pageUri = ((echo $baseUri "&page=" $page) | str collect)
let re = (http $pageUri | from json )
print $re
if ($re.has_more) {
$re.items | append (getStackAPIPageLoop $baseUri ($page + 1))
} else {
$re.items
}
}
let baseUri = "https://api.stackexchange.com/2.3/users/201818/answers?order=desc&sort=activity&site=superuser&filter=!6VvPDzQHaquV_"
# If you have a API key, add it, as you'll get a higher quota
let answers = getStackAPIPageLoop $baseUri
At this point, the $answers
variable contains a list of all of the user's questions and the requested metadata that we can parse as desired. E.g.:
$answers |
where { |it| "networking" in $it.tags } |
where { |it| $it.score != 0 } |
length
# 46
$answers |
where { |it| "networking" in $it.tags } |
get score |
math sum
# 77
$answers |
where { |it| "networking" in $it.tags } |
where { |it| $it.score != 0 } |
each { |answer| { "Question": $"[($answer.title)]\(($answer.link)\)" , "Score": $answer.score } } |
to md |
clip.exe
# Replace clip.exe with your OS's clipboard app. This will create the markdown table above (minus the total, which I added manually) that you can simply paste directly into Stack's markdown editor.