I am doing some research on consumer grade GPS accuracy and precision. I took 5 readings for 20 known locations (100 readings). Am I correct in assuming that the standard deviation between the 5 readings at each location would indicate precision, whereas the average distance from the five points to its known location would indicate accuracy?
With qualifications and suitably modified, this is correct: the standard deviation measures spread, which is inversely related to precision, while the vectors (not distances) to the reference points measure inaccuracy.
With only five readings per location several problems will arise:
The standard deviations of the coordinates will vary--by a factor of three or more--due only to random variation. Thus you might obtain a wide range of standard deviations, leaving uncertainty about what the precision really is.
Unless each group of readings was taken at widely spaced times, they could be autocorrelated: the full amount of possible variation might be much larger than observed. This is because some components of the positional error "drift" only slowly in time.
One important component of error, the numbers and positions of available satellites, might not be sufficiently well represented in such a small dataset. This could be evidenced by very large variation in some of the readings (that is, a distinctly non-normal distribution of values relative to the reference points).
The first problem is overcome using an Analysis of Variance (ANOVA) to obtain a single estimate of the overall variance, which would be based on 20*(5-1) = 80 degrees of freedom, which is large enough to give a reasonable estimate.
ANOVA will not overcome the second problem, which requires customized techniques to estimate the autocorrelation (assuming each reading includes a time stamp).
The third problem requires more careful analyses, starting with a (routine) distributional analysis of the ANOVA residuals. That is a discussion that would take us too far afield here.
Average distances normally would not be used to estimate inaccuracy: they actually indicate imprecision. Instead, the difference between the centroid (average point) of each group of readings and its reference point would be more appropriate.
More sophisticated techniques of multivariate statistical analysis could be brought to bear to analyze the variance-covariance matrices of the readings, if there is a possibility that the x- and y-coordinates are correlated. If that possibility is ruled out by examination of the dataset and on physical grounds (which is the default assumption by many people) then you can just analyze the 20*5*2 = 200 residuals of the separate coordinates (which are their values relative to the reference locations). In particular, ANOVA software will automatically include a test (the F Test) to determine whether there is evidence of any inaccuracy at all.
You are correct. Precision is how close each of the data points are to each other and accuracy is how close to the target the data points are.
Just be carful with how you take your data points. New GPS units use more than just the GPS locations now. So I would check each of the channels and see what data it is gathering and what data is inferred.