# In a class with multiple teachers, how can I transform student scores based on their teacher's average compared to the population average?

It has been ages since I've taken any statistics courses, and I have found myself in the following situation:

I am in charge of a university course with about 400 students and 10 assessors.

There is a presentation-style activity coming up, during which any given student will be graded by one of the assessors. Each assessor will have about 30, 40 students.

We have a rubric for grading, but historically there is a lot of variation in each assessor's average, standard deviation, range, etc. Teaching beliefs and expectations of students are very hard to change!

I would like to "normalize" student scores, so that any given student's assessor's mean would be compared to the population mean, and then that student's score would be scaled up or down accordingly.

Ideally, perfect scores (say, 20/20) would not change. I imagine as scores get closer to full points, the shift up or down would be less significant. Lower scores will be scaled a lot more.

To me, this sounds logarithmic, but I don't have the slightest idea how to go about it.

I am making a spreadsheet to handle this, so I was hoping for some mathematical formula to use. I am quite adept with Excel, and I have a strong mathematical background (at least I thought I did!), so complexity of the formula is not really a problem.

I don't remember a whole lot of terminology, however, so please be patient with me! And please let me know if more details are needed.

Cheers!

If you assume each assessors' scores are normally distributed, then you can compute standardized scores for each student as

$$z=\frac{x-\mu}{\sigma}$$

where x is the student's score, $\mu$ is the mean score of the student's assessor, and $\sigma$ is the standard deviation of the student's assessor's scores. Here is an example in R.

# Simulate 40 generous and 40 grumpy assessor scores
set.seed(23)
x1 <- rnorm(n=40, mean=13, sd=3)
x2 <- rnorm(n=40, mean=8, sd=2)

# Standardize student scores based on their assessor
z1 <- (x1 - mean(x1))/sd(x1)
z2 <- (x2 - mean(x2))/sd(x2)

# Plot distributions of unstandardized and standardized scores
layout(matrix(1:4, 2, 2))
hist(x1, main="Generous assessor- unstandardized", xlim=c(4, 22))
abline(v=mean(x1), col="red")
hist(z1, main="Generous assessor- standardized", xlim=c(-3, 3))
abline(v=mean(z1), col="red")
hist(x2, main="Grumpy assessor- unstandardized", xlim=c(4, 22))
abline(v=mean(x2), col="red")
hist(z2, main="Grumpy assessor- standardized", xlim=c(-3, 3))
abline(v=mean(z2), col="red")


You can see that the unstandardized scores are biased by the assessor, but the distributions of standardized scores are roughly normally distributed around 0.

• pl. explain calculation of student's assessor mean and population mean with example.
– user10619
May 11, 2016 at 4:05
• I added an example, is that what you mean? May 11, 2016 at 4:49
• Hey Slow loris, I think this does it! The only other step would be to transform the range of [-3,3] to [0,20], which is trivial. Thanks so much! I feel like an idiot because I recall this formula being like the first thing you learn about in statistics courses :P May 11, 2016 at 5:16
• What do you mean transform the range [-3,3] to [0,20] and how is that trivial? May 11, 2016 at 5:20
• The range of the above graphs is -3 to 3, which is the number of standard deviations from the mean if I recall. Is that correct? Grades must actually fall between 0 and 20, so my first instinct was to use the population mean as the 0 above, then use the population standard deviation to calculate transformed scores. I'm trying that now to see if it gives me the values I am looking for. Maybe it's not so trivial as I expected, actually....? May 11, 2016 at 5:26