Normalized quantity weighted scoring algorithm

38 Views Asked by At

I am trying to keep track of a persons opinion, positive or negative in a set of n categories. I do this with a series of questions that each have a positive or negative connotation (ranging from -1 to 1), with an associated yes or no "vote" from the person. For each question, I want to adjust that persons score in each category positively or negatively based on their vote, that questions connotation, and the how relevant that question was to that category. the relevance to the category is in the form of a proportion for each. there are 3 things this needs to be able to do that I cant figure out:

  1. The data needs to stay normalized between some known range, (preferably -1 and 1 to match the questions), but something based on z-score could also probably be made to work
  2. Positive numbers need to stay positive and negative numbers need to stay negative after normalizing the data, as in this context they have different meaning
  3. With the methods that I have tried, categories that have had fewer adjustments made will have smaller numbers, but that may not correspond to the person true opinion, so categories that have had fewer questions asked should have their questions weighted higher somehow.

Right now I have a version with no range and no normalization that works like this: if the vote was yes, add the proportion to the category * the question's connotation, and if it was no, do the same but subtract. This number is what I would like to base the new methods adjustments on.