I have downloaded my Latitude location history from Google for the time of about three years and now I'd like to, for starters, visualize where I've been.

It turns out that the history contains some outliers. For example, I have been located in China or in Africa, where in fact I haven't been. Other outliers are more in the nature of back-and-forth between a location where I have in fact been and some different location a few hundred meters away.

As you might imagine, the history consists of geospatial positions (latitude/longitude coordinate pairs) and time stamps. The median time interval is 60 seconds, but some intervals are much longer (phone off etc.).

I am wondering if there is a "standard mechanism" ready to be used to remove outliers (locations where I haven't been).

My own ideas end up in some (maybe theoretical) issues. For example, if I look at locations from step to step, I can easily tell what distance I must have travelled in which time. So I could iterate the positions from start to finish and erase points which would have required me to travel faster than humanly possible. But when comparing point n with n+1, how can I tell which one is likely to be the "true" position? And when I simply delete n+1, I will have to re-visit n in order to now look at the movement from n to n+2. And so on.

So I thought, let's hear what the experts have to say. As you can tell, I'm not one. You can talk code (Python) and R to me and I have basic stats knowledge.


1 Answer 1


There is certainly no standard procedure, but since you are interested in "places" and not in travel routes or very exact locations (as I assume?) you could just spatially cluster the points with a technique that does not classify all the points but creates clusters only where there are enough points (in "places" and not on routes, for example). You could play with different criteria for cluster sizes. As actual places you could then take the mean centre of the clusters.

This solves both the problem of these extreme outliers (Africa and China in this case) because these are GPS errors that are rather sporadic (i.e. these points won't be clustered), and also the problem of the usual 10-100m GPS inaccuracies that happen quite often, because such points are going to be clustered.

One of the disadvantages of this approach, is of course, reduced precision for places (but not necessarily reduced accuracy).

Thus I would look for spatial point clustering techniques (there are many different), and maybe you could post a similar question on http://gis.stackexchange.com, which might be a bit more suited to your problem.

  • $\begingroup$ You are right, I am not mainly interested in exact travel routes. Thanks! $\endgroup$
    – Marian
    Commented Apr 6, 2013 at 15:54
  • $\begingroup$ Fair enough! Actually I was still hoping for the "standard procedure" recipe :) $\endgroup$
    – Marian
    Commented Apr 10, 2013 at 14:11

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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