我有一个包含邮政编码和状态列(等等)的数据集。它很大但并不可怕(4M 行,70 列),但过滤错误的观察需要很长时间。具体来说,我试图放弃邮政编码与州不相加的观察结果(例如,新泽西州邮政编码以 0 开头,但数据中的许多邮政编码以 7 开头)。这是我目前的方法,但我相信必须有更快的方法。我们欢迎所有的建议!
df_clean <- df_tmp %>%
filter(!(startsWith(zip, c("7", "8")) & state == "NJ")) %>%
filter(!(startsWith(zip, c("0", "1")) & state == "FL")) %>%
filter(!(startsWith(zip, "4") & state == "ME")) %>%
filter(!(startsWith(zip, c("1", "2")) & state == "MA")) %>%
filter(!(startsWith(zip, "6") & state == "CT"))
我希望它是不言自明的,但如果样本数据集会有所帮助,请告诉我。谢谢!