Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Heres a simple mathematical/statistical question

Heres a simple mathematical/statistical question

Scheduled Pinned Locked Moved The Lounge
questioncssfunctionalhelp
15 Posts 8 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Offline
    M Offline
    MrEyes
    wrote on last edited by
    #1

    Lets say that Codeproject is running a competition for the best message, entries to this competition can be made from the 1st to the 31st of January. The winner of the competition is decided, by Codeproject members, via the existing and immutable message rating system. Rating is open from the 1st January to the 7th February (i.e. competition entry time plus one week). Now here's the problem, how do you decide who the winner is? Obviously summing the points (1 to 5) is the simplest answer, however this has a few critical flaws:

    Lets say a message is posted on the 2nd January - this will
    be available for public ratings for almost 5 weeks. However
    if a message is posted on the 30th of January, it is only
    available for rating for around a week. So it will most
    likely have less votes and therefore a lower score.

    Lets say a message is rated 1 a total of 15 times, this will
    score 15 points - another entry may have been rated 5 twice
    and therefore score 10 points. However the second entry is
    obviously better than the first as it has more 5 ratings.

    The rating system and assigned points cannot be changed, so the question is: Considering the flaws - how do you decide which entry is the winner on the morning of the 8th February? My current solution sums all the votes and divides by the total days the message was publicly available, this effectively gives an average daily vote total, the highest total wins. However this does not really take into consideration the second flaw.

    T M E P K 6 Replies Last reply
    0
    • M MrEyes

      Lets say that Codeproject is running a competition for the best message, entries to this competition can be made from the 1st to the 31st of January. The winner of the competition is decided, by Codeproject members, via the existing and immutable message rating system. Rating is open from the 1st January to the 7th February (i.e. competition entry time plus one week). Now here's the problem, how do you decide who the winner is? Obviously summing the points (1 to 5) is the simplest answer, however this has a few critical flaws:

      Lets say a message is posted on the 2nd January - this will
      be available for public ratings for almost 5 weeks. However
      if a message is posted on the 30th of January, it is only
      available for rating for around a week. So it will most
      likely have less votes and therefore a lower score.

      Lets say a message is rated 1 a total of 15 times, this will
      score 15 points - another entry may have been rated 5 twice
      and therefore score 10 points. However the second entry is
      obviously better than the first as it has more 5 ratings.

      The rating system and assigned points cannot be changed, so the question is: Considering the flaws - how do you decide which entry is the winner on the morning of the 8th February? My current solution sums all the votes and divides by the total days the message was publicly available, this effectively gives an average daily vote total, the highest total wins. However this does not really take into consideration the second flaw.

      T Offline
      T Offline
      TommyTomToms
      wrote on last edited by
      #2

      (Total Score / Total Votes) / Total Days ...??? or suck a thumb :)

      A dogged, arrogant belief in self and the childlike idealism that comes with not knowing my limits. This is my greatest blessing, my priceless attribute.

      M M 2 Replies Last reply
      0
      • T TommyTomToms

        (Total Score / Total Votes) / Total Days ...??? or suck a thumb :)

        A dogged, arrogant belief in self and the childlike idealism that comes with not knowing my limits. This is my greatest blessing, my priceless attribute.

        M Offline
        M Offline
        MrEyes
        wrote on last edited by
        #3

        Possibly suck a thumb :), that was one of my possible solutions but it doesn't work: Message 1 (10 Days) 4, 2, 1, 1, 1 = (9 / 5) / 10 = 0.18 Message 2 (40 days) 1, 1, 1, 1, 3, 1, 1 = (9 / 7) / 40 = 0.03 Message 3 (40 days) 5, 5, 5, 4, 5, 4, 3 = (31 / 7) / 40 = 0.11 Message 3 is obviously the better message, but message 1 wins here as it has a higher "total"

        1 Reply Last reply
        0
        • T TommyTomToms

          (Total Score / Total Votes) / Total Days ...??? or suck a thumb :)

          A dogged, arrogant belief in self and the childlike idealism that comes with not knowing my limits. This is my greatest blessing, my priceless attribute.

          M Offline
          M Offline
          Mustafa Ismail Mustafa
          wrote on last edited by
          #4

          Wouldn't work, because messages posted (and forgotten) early in Jan would have a massive divisor in comparison with those later in the year.

          Don't forget to vote if the response was helpful


          Sig history "dad" Ishmail-Samuel Mustafa Unix is a Four Letter Word, and Vi is a Two Letter Abbreviation

          1 Reply Last reply
          0
          • M MrEyes

            Lets say that Codeproject is running a competition for the best message, entries to this competition can be made from the 1st to the 31st of January. The winner of the competition is decided, by Codeproject members, via the existing and immutable message rating system. Rating is open from the 1st January to the 7th February (i.e. competition entry time plus one week). Now here's the problem, how do you decide who the winner is? Obviously summing the points (1 to 5) is the simplest answer, however this has a few critical flaws:

            Lets say a message is posted on the 2nd January - this will
            be available for public ratings for almost 5 weeks. However
            if a message is posted on the 30th of January, it is only
            available for rating for around a week. So it will most
            likely have less votes and therefore a lower score.

            Lets say a message is rated 1 a total of 15 times, this will
            score 15 points - another entry may have been rated 5 twice
            and therefore score 10 points. However the second entry is
            obviously better than the first as it has more 5 ratings.

            The rating system and assigned points cannot be changed, so the question is: Considering the flaws - how do you decide which entry is the winner on the morning of the 8th February? My current solution sums all the votes and divides by the total days the message was publicly available, this effectively gives an average daily vote total, the highest total wins. However this does not really take into consideration the second flaw.

            M Offline
            M Offline
            Mustafa Ismail Mustafa
            wrote on last edited by
            #5

            1. You would have to set an equal "validity" period for the messages to be judged equally. This is a statistical requirement much less a scientific testing requirement (have as little a number of variables as possible) 2. Why?

            Don't forget to vote if the response was helpful


            Sig history "dad" Ishmail-Samuel Mustafa Unix is a Four Letter Word, and Vi is a Two Letter Abbreviation

            1 Reply Last reply
            0
            • M MrEyes

              Lets say that Codeproject is running a competition for the best message, entries to this competition can be made from the 1st to the 31st of January. The winner of the competition is decided, by Codeproject members, via the existing and immutable message rating system. Rating is open from the 1st January to the 7th February (i.e. competition entry time plus one week). Now here's the problem, how do you decide who the winner is? Obviously summing the points (1 to 5) is the simplest answer, however this has a few critical flaws:

              Lets say a message is posted on the 2nd January - this will
              be available for public ratings for almost 5 weeks. However
              if a message is posted on the 30th of January, it is only
              available for rating for around a week. So it will most
              likely have less votes and therefore a lower score.

              Lets say a message is rated 1 a total of 15 times, this will
              score 15 points - another entry may have been rated 5 twice
              and therefore score 10 points. However the second entry is
              obviously better than the first as it has more 5 ratings.

              The rating system and assigned points cannot be changed, so the question is: Considering the flaws - how do you decide which entry is the winner on the morning of the 8th February? My current solution sums all the votes and divides by the total days the message was publicly available, this effectively gives an average daily vote total, the highest total wins. However this does not really take into consideration the second flaw.

              E Offline
              E Offline
              Ennis Ray Lynch Jr
              wrote on last edited by
              #6

              For each message that is to be judged send me $10, U.S. and then for every vote send me a $1 for a 1 vote, $2 for a two vote ... $5 for a 5 vote. I will then certify the results. I guarantee there will be a tie among all participants.

              Need software developed? Offering C# development all over the United States, ERL GLOBAL, Inc is the only call you will have to make.
              If you don't ask questions the answers won't stand in your way.
              Most of this sig is for Google, not ego.

              D 1 Reply Last reply
              0
              • M MrEyes

                Lets say that Codeproject is running a competition for the best message, entries to this competition can be made from the 1st to the 31st of January. The winner of the competition is decided, by Codeproject members, via the existing and immutable message rating system. Rating is open from the 1st January to the 7th February (i.e. competition entry time plus one week). Now here's the problem, how do you decide who the winner is? Obviously summing the points (1 to 5) is the simplest answer, however this has a few critical flaws:

                Lets say a message is posted on the 2nd January - this will
                be available for public ratings for almost 5 weeks. However
                if a message is posted on the 30th of January, it is only
                available for rating for around a week. So it will most
                likely have less votes and therefore a lower score.

                Lets say a message is rated 1 a total of 15 times, this will
                score 15 points - another entry may have been rated 5 twice
                and therefore score 10 points. However the second entry is
                obviously better than the first as it has more 5 ratings.

                The rating system and assigned points cannot be changed, so the question is: Considering the flaws - how do you decide which entry is the winner on the morning of the 8th February? My current solution sums all the votes and divides by the total days the message was publicly available, this effectively gives an average daily vote total, the highest total wins. However this does not really take into consideration the second flaw.

                P Offline
                P Offline
                PIEBALDconsult
                wrote on last edited by
                #7

                Total 5s within three days after posting. If there's a tie, check the 4s, etc.

                M D 2 Replies Last reply
                0
                • E Ennis Ray Lynch Jr

                  For each message that is to be judged send me $10, U.S. and then for every vote send me a $1 for a 1 vote, $2 for a two vote ... $5 for a 5 vote. I will then certify the results. I guarantee there will be a tie among all participants.

                  Need software developed? Offering C# development all over the United States, ERL GLOBAL, Inc is the only call you will have to make.
                  If you don't ask questions the answers won't stand in your way.
                  Most of this sig is for Google, not ego.

                  D Offline
                  D Offline
                  Dan Neely
                  wrote on last edited by
                  #8

                  good luck with that. I expressed my willingness to accept consideration for voting in martin hughes recent giveaway but noone responded. :doh:

                  Today's lesson is brought to you by the word "niggardly". Remember kids, don't attribute to racism what can be explained by Scandinavian language roots. -- Robert Royall

                  1 Reply Last reply
                  0
                  • P PIEBALDconsult

                    Total 5s within three days after posting. If there's a tie, check the 4s, etc.

                    M Offline
                    M Offline
                    MrEyes
                    wrote on last edited by
                    #9

                    The thing is people might not visit everyday so could easily have their vote excluded from the calculations. Here is another of my alternative solutions, which I think might work: Assuming the following: 5 - Excellent, 4 - Good, 3 - Average, 2 - Bad, 1 - Terrible Deduct 3 from each score: 2 - Excellent, 1 - Good, 0 - Average, -1 - Bad, -2 - Terrible (Total adjusted scores) / (Total of days the message was publicly available).

                    P D 2 Replies Last reply
                    0
                    • M MrEyes

                      The thing is people might not visit everyday so could easily have their vote excluded from the calculations. Here is another of my alternative solutions, which I think might work: Assuming the following: 5 - Excellent, 4 - Good, 3 - Average, 2 - Bad, 1 - Terrible Deduct 3 from each score: 2 - Excellent, 1 - Good, 0 - Average, -1 - Bad, -2 - Terrible (Total adjusted scores) / (Total of days the message was publicly available).

                      P Offline
                      P Offline
                      PIEBALDconsult
                      wrote on last edited by
                      #10

                      MrEyes wrote:

                      their vote excluded from the calculations

                      Tough. They know the rules, if they can't be bothered, we don't need them. Plus we don't want someone to call his freinds late in the month to give his early messages a boost.

                      1 Reply Last reply
                      0
                      • M MrEyes

                        The thing is people might not visit everyday so could easily have their vote excluded from the calculations. Here is another of my alternative solutions, which I think might work: Assuming the following: 5 - Excellent, 4 - Good, 3 - Average, 2 - Bad, 1 - Terrible Deduct 3 from each score: 2 - Excellent, 1 - Good, 0 - Average, -1 - Bad, -2 - Terrible (Total adjusted scores) / (Total of days the message was publicly available).

                        D Offline
                        D Offline
                        Dan Neely
                        wrote on last edited by
                        #11

                        Shifting the zero won't change anything.

                        Today's lesson is brought to you by the word "niggardly". Remember kids, don't attribute to racism what can be explained by Scandinavian language roots. -- Robert Royall

                        1 Reply Last reply
                        0
                        • P PIEBALDconsult

                          Total 5s within three days after posting. If there's a tie, check the 4s, etc.

                          D Offline
                          D Offline
                          Dan Neely
                          wrote on last edited by
                          #12

                          Message 1: 5, 5, 3, 2, 2, 1, 1, 1, 1, 1 Message 2: 5, 4, 4, 4, 4, 4, 4, 4, 3, 2

                          Today's lesson is brought to you by the word "niggardly". Remember kids, don't attribute to racism what can be explained by Scandinavian language roots. -- Robert Royall

                          P 1 Reply Last reply
                          0
                          • D Dan Neely

                            Message 1: 5, 5, 3, 2, 2, 1, 1, 1, 1, 1 Message 2: 5, 4, 4, 4, 4, 4, 4, 4, 3, 2

                            Today's lesson is brought to you by the word "niggardly". Remember kids, don't attribute to racism what can be explained by Scandinavian language roots. -- Robert Royall

                            P Offline
                            P Offline
                            PIEBALDconsult
                            wrote on last edited by
                            #13

                            So? All those 4-voteers (I almost corrected that, but decided to leave it) should probably have voted 5. (I only ever vote 1 or 5.)

                            1 Reply Last reply
                            0
                            • M MrEyes

                              Lets say that Codeproject is running a competition for the best message, entries to this competition can be made from the 1st to the 31st of January. The winner of the competition is decided, by Codeproject members, via the existing and immutable message rating system. Rating is open from the 1st January to the 7th February (i.e. competition entry time plus one week). Now here's the problem, how do you decide who the winner is? Obviously summing the points (1 to 5) is the simplest answer, however this has a few critical flaws:

                              Lets say a message is posted on the 2nd January - this will
                              be available for public ratings for almost 5 weeks. However
                              if a message is posted on the 30th of January, it is only
                              available for rating for around a week. So it will most
                              likely have less votes and therefore a lower score.

                              Lets say a message is rated 1 a total of 15 times, this will
                              score 15 points - another entry may have been rated 5 twice
                              and therefore score 10 points. However the second entry is
                              obviously better than the first as it has more 5 ratings.

                              The rating system and assigned points cannot be changed, so the question is: Considering the flaws - how do you decide which entry is the winner on the morning of the 8th February? My current solution sums all the votes and divides by the total days the message was publicly available, this effectively gives an average daily vote total, the highest total wins. However this does not really take into consideration the second flaw.

                              K Offline
                              K Offline
                              kinar
                              wrote on last edited by
                              #14

                              MrEyes wrote:

                              The winner of the competition is decided, by Codeproject members, via the existing and immutable message rating system. Rating is open from the 1st January to the 7th February (i.e. competition entry time plus one week).

                              Here is your problem. Change your voting so that it doesn't start until all entries are in (aka Feb 1). If I were to setup this sort of system, Awards would "lag" the articles by 1 submission period. So voting on Jan articles occurs in Feb and the award for Jan is given out at the end of Feb. Voting for Feb occurs in March with the award at the end of the month.

                              1 Reply Last reply
                              0
                              • M MrEyes

                                Lets say that Codeproject is running a competition for the best message, entries to this competition can be made from the 1st to the 31st of January. The winner of the competition is decided, by Codeproject members, via the existing and immutable message rating system. Rating is open from the 1st January to the 7th February (i.e. competition entry time plus one week). Now here's the problem, how do you decide who the winner is? Obviously summing the points (1 to 5) is the simplest answer, however this has a few critical flaws:

                                Lets say a message is posted on the 2nd January - this will
                                be available for public ratings for almost 5 weeks. However
                                if a message is posted on the 30th of January, it is only
                                available for rating for around a week. So it will most
                                likely have less votes and therefore a lower score.

                                Lets say a message is rated 1 a total of 15 times, this will
                                score 15 points - another entry may have been rated 5 twice
                                and therefore score 10 points. However the second entry is
                                obviously better than the first as it has more 5 ratings.

                                The rating system and assigned points cannot be changed, so the question is: Considering the flaws - how do you decide which entry is the winner on the morning of the 8th February? My current solution sums all the votes and divides by the total days the message was publicly available, this effectively gives an average daily vote total, the highest total wins. However this does not really take into consideration the second flaw.

                                realJSOPR Offline
                                realJSOPR Offline
                                realJSOP
                                wrote on last edited by
                                #15

                                The solution: 0) Determine the average number of votes each message received, and round that value down to the nearest whole number. 1) Adjust the vote count down so that all messages have an equal number of votes. Lowest rated votes are removed first. Any message that does not have at least the average number of votes is automatically eliminated from consideration. 2) Calculate the average score of the remaining messages. 3) Automatically add enough points to my message's score so that I win.

                                "Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997
                                -----
                                "...the staggering layers of obscenity in your statement make it a work of art on so many levels." - Jason Jystad, 10/26/2001

                                1 Reply Last reply
                                0
                                Reply
                                • Reply as topic
                                Log in to reply
                                • Oldest to Newest
                                • Newest to Oldest
                                • Most Votes


                                • Login

                                • Don't have an account? Register

                                • Login or register to search.
                                • First post
                                  Last post
                                0
                                • Categories
                                • Recent
                                • Tags
                                • Popular
                                • World
                                • Users
                                • Groups