#Grade curving with Google Sheets
Make a copy of a demo grading sheet here: Demo Grade Sheet Showing some methods to curve a grade based on this original blog post I have used to get more examples of how to curve grades
#Grade curving with Google Sheets
Make a copy of a demo grading sheet here: Demo Grade Sheet Showing some methods to curve a grade based on this original blog post I have used to get more examples of how to curve grades
/** | |
* Return, rewrite, regrade | |
* | |
* @param {number} The original grade | |
* @param {number} The re-graded assignment | |
* @param {number} The percentage of the regraded assignment to count | |
* @return The curved grade | |
* @customfunction | |
*/ | |
function REGRADEDCURVE(original, newGrade, percentage) { | |
var regraded = original + (newGrade - original) * (percentage * .01); | |
return regraded; | |
} | |
/** | |
* Flat curve | |
* | |
* @param {number} Original grade | |
* @param {number} Number to add to grade | |
* @return The curved grade | |
* @customfunction | |
*/ | |
function FLATCURVE(original, flat) { | |
return original + flat; | |
} | |
/** | |
* High Grade to a 100% | |
* | |
* @param {number} Highest grade | |
* @param {number} Grade to be curved | |
* @return The curved grades | |
* @customfunction | |
*/ | |
function HIGHCURVE(highGrade, grade) { | |
return Math.round((100 * grade) / highGrade); | |
} | |
/** | |
* Linear Scale | |
* | |
* @param {number} The AVERAGE of the grades | |
* @param {number} The DESIRED AVERAGE of the grades | |
* @param {number} The LOWEST or HIGHEST grade | |
* @param {number} The DESIRED LOW or HIGH grade | |
* @param {number} The grade to be curved | |
* @return The curved grade | |
* @customfunction | |
*/ | |
function LINEARCURVE(x0, y0, x1, y1, grade) { | |
return Math.round(y0 + ((y1 - y0) / (x1 - x0)) * (grade - x0)); | |
} | |
/** | |
* Root Curve | |
* | |
* @param {number} The grade to curve | |
* @return The curved grade | |
* @customfunction | |
*/ | |
function ROOTCURVE(grade) { | |
return Math.round(Math.pow((100 * Math.pow(grade, 2)), 1/3)); | |
} | |
/** | |
* Bell Curve | |
* | |
* @param {number} The grade to curve | |
* @customfunction | |
*/ | |
function BELLCURVE(grade) { | |
return 'Please do not use this curve!'; | |
} |