Respostas:
Não existe uma relação algorítmica estrita entre latitude e longitude e código postal - todas elas são áreas personalizadas geradas pelo serviço postal. Você precisa acessar um conjunto de dados que codifique polígonos / centróides de polígono por CEP.
1) Complexo
Tradicionalmente, essa tarefa (associada à pesquisa de endereço) é denominada 'Geocodificação'. O método mais conveniente para a pesquisa completa de endereços é encontrar um geocoder online preexistente, seja pelo Google Maps, Bing Maps ou ESRI.
2) Mais simples
Porém, apenas para códigos postais nos EUA, há dados disponíveis no Censo:
http://www.census.gov/geo/www/cob/z52000.html
Não estou familiarizado com a capacidade geoespacial R, mas tudo que você precisa é de coordenadas poligonais> centróides e centróides.
3) Mais simples
Essa tarefa é bastante comum para a existência de um conjunto de dados centróide preexistente: http://coolthingoftheday.blogspot.com/2008/04/free-us-zip-code-database-as-csv.html
você olhou para o zipcode
pacote ? é basicamente um dataframe com aproximadamente 45.000 códigos postais, além de cidade, estado, latitude e longitude.
Eu uso a geocode
função no ggmap
pacote.
Parece que você está usando Ruby on Rails
Experimente este tutorial em Ryan Bates
http://railscasts.com/episodes/273-geocoder?view=asciicast
Eu tentei isso antes e funciona perfeitamente. Quando você digita o endereço ou o CEP, ele mostra a longitude e latitude.