One of my users needs to report on the middle 80% of test scores. What this means is that she needs find the range that is left when dropping off the low 10% and top 10%. Is this possible within Salesforce?


Say we have test scores of 1,2,3,4,5,6,7,8,9,10. The middle 80% would be 2-8.

Alternatively, if I can just identify what scores fall in the bottom 10% and upper 10% I can probably make that work.

  • Can you make any assumptions about the statistical distribution of these scores? For example, if you know the mean and variance and that they are normally distributed you could chop off the top/bottom 10%. Sep 28 '12 at 22:11
  • The primary case is GMAT scores, but I don't know offhand about their distribution. Is there something natively inside SF that can help me calculate that or do I need to turn to Apex?
    – Mike Chale
    Sep 29 '12 at 0:16
  • Create a batch class that analyzes all of the test records, calculates the top and bottom cutoff values, then stores these two values in a Custom Setting.
  • Then create a formula field on your test object that compares its own score with the Custom Setting values, and use that field to filter your report.

This batch would have to run after any inserts, updates or deletes in order to be current; it could be scheduled for a nightly run if necessary. Also, this is only practical if you are always analyzing the same data set by the same dimension. If you need to be able to do this by month, by year, by geography, etc, it becomes increasingly complicated.

  • While this is probably the best way to do it inside Salesforce, we decided it was more efficient to export the data and use Excel.
    – Mike Chale
    Oct 13 '12 at 18:27

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.