我正在对Github用户进行一些分析。在分析中,我需要通过他的个人信息(我通过Github API获取他的个人信息)知道某个人来自哪里(确切地指向城市)。
问题在于您知道Github用户使用具有不同特异性的非正式语法填充他们的位置信息,因此以下位置名称都是允许的:
San Francisco, ca
San Francisco, CA
San Francisco, United States
San Francisco, California, USA
San Francisco Bay Area
San Francisco, CA, United States
USA San Francisco
现在我使用WebService提供的GeoNames来解析这些非正式的位置名称并获取“旧金山”的详细信息(例如,lat& lng)。
因为它们是不同的字符串,我的程序认为它们是不同的地方,所以对于每个字符串,它将调用Webservice一次。
是否有任何解决方案可以缩短网络服务请求时间?也就是说,如果我的程序知道上面列出的名称是同一个地方(“旧金山”)的名称,对于所有名称,它只调用一次WebService。
字符串聚类是否有效?或者可能是其他一些有效的解决方案?