我有一个邮政编码的数据框架,我希望Map到一个城市和国家的每一个特定的邮政编码。目前,我已经发挥了邮政编码包有点,但我不确定是否可以解决这个特定的问题。
以下是我目前掌握的一些数据样本:
str(all_key$zip)
chr [1:406] "43031" "24517" "43224" "43832" "53022" "60185" "84104" "43081"
"85226" "85193" "54656" "43215" "94533" "95826" "64804" "49548" "54467"
预期的输出将是在数据框的每一行中添加一个城市和州列,以引用各个邮政编码:
head(all_key)
zip city state
1 43031 city1 state1
2 24517 city2 state2
3 43224 city3 state3
4 43832 city4 state4
5 53022 city5 state5
6 60185 city6 state6
先谢谢你的帮助。
4条答案
按热度按时间sqxo8psd1#
另一项更新-2023年2月
另一个软件包(zipcodeR)已经被添加,使这变得更容易。
答案更新-2020年1月
邮政编码包似乎已经消失了,所以这个答案已经更新,以显示如何从外部文件添加lat-lon。
原始答案
您可以从
zipcode
包中获取数据,然后进行合并以查找数据。如果需要保持行的顺序相同,可以只设置邮政编码数据的行名称,然后使用它来选择所需的行和列。
更新答案-2020年1月
因为zipcode包已经消失了,所以这里展示了如何从下载的数据集中添加lat-lon信息。我正在使用的文件 * 今天 * 就存在了,但是这个方法应该可以用于其他文件。请参阅GIS StackExchange以获得一些关于在哪里下载数据的线索。
第二次更新-2023年2月
另一个软件包
zipcodeR
使这一点变得更容易,下面是一些简单的代码来演示它。cidc1ykv2#
您仍然可以通过从归档文件https://cran.r-project.org/src/contrib/Archive/zipcode/下载来使用“zipcode”包
下载tar. gz文件到您的计算机后,您可以从RStudio GUI Packages窗格安装它。单击“Install”后,您可以将选项更改为“Package Archive File”并指向下载的tar. gz文件。
fdx2calv3#
安装/使用USA package,也就是described here,它包含来自归档的邮政编码包的tibble(zips和lats/long)。
qv7cva1a4#
可以使用R包zipcodeR中的 Dataframe 。
要将城市和州添加到数据框中,您可以从zipcodeR提供的数据框(称为zip_code_db)中选择所需变量,然后将其与数据框连接: