I need to analyze a set of GPS coordinates in python. I need to find out what is the most frequent location. Given precision issues of the GPS data, the precision of the locations is not very high. Difficult to explan (and to search for infos on google), therefore an example:

I drive from home to work every day for 2 months
I start my gps logger for each trip and stop at the end of the trip 
Occasionally, I go somewhere else

If I run the script I need to analyse the coordinates where drives started and stopped, with a location radius precision of let's say 20m, I'll find out that the most frequent place is my home and my work (each with a radius of 20m). It does not matter where did I park within this radius.
Is there any library in python that can perform such operations? What do you recommend? 
Thanks
For counting most frequent locations, a simple approach is to use only the first 3 digits after the latitdue/longitude decimal point, or better round to 3 digits after comma.
At aequator: 
4 digits: 11 m
3 digits  111m
2 digits 1.1km
1 digits 11.1km
0 digits 111.111 km (distance between two meridians):  40 000 000 / 360
Then you could use as hashtable, multiply with e,g 1000 to get rid of the 3 decimal points, 
and store as java.awt.Point in the hashtable.
There are better solutions, but this gives an first idea.
Python: Find out most frequent locations on a set of gps coordinates