I have a gardener whose job it is to measure trees in meters using a measuring stick. She measures the heights of 1,000 trees. I plot these measurements on a violin plot in R. I am specifically interested in identifying trees that are growing too tall (above six meters) or too short (below 3 meters), so I added horizontal lines to the plot to show this graphically.
data <- round(rnorm(1000,4), 2) library(vioplot) vioplot(data, wex = 0.5, ylim = c(0, 7)) abline(a = 3, b = 0) abline(a = 6, b = 0)
This is all well and good. However, my assumption is that the gardener incorrectly estimates the height of the trees some of the time. Specifically, sometimes she doesn't overestimate their size at all (change of 0), often she overestimates them by 0.3 meters, and occasionally she overestimates them by an entire meter (change of 1.0). I think, in the simplest case, I could "correct" her measurements like so:
vioplot(data, (data - 0.3), (data - 1.0), wex = 0.5, ylim = c(0, 7))
I think it’s more complicated than that due to the fact that if the gardener shifts results by 0.0 to let’s say 1.0 (some results may be entirely correct, only a certain percent are shifted), it’s a random process that affects mostly trees in the center of the Gaussian curve. As we move higher from the mean, the number of shifted specimens decreases but it is still relatively high due to relatively high number of the high normal values. In order to shift an abnormally low tree into the normal range (between the horizontal lines), the gardener starts with considerably fewer trees, which makes it a considerably less likely (albeit possible) event. Does that make sense? So how would I account for this in my R code?
If I draw the lines in the same place, what proportion of trees will be missclassified??