2017-11-27 27 views
0

unsolved problem에 대한 해결책을 찾기 위해 acs 패키지를 발견했습니다. 나는 choropleth 꾸러미 안에 어떤 형태로든 카운티 정보를 [city, state] 형식의 데이터로 가져올 방법이 없다고 가정합니다. 이것이 acs로 전처리가 필요한 이유입니다.R 패키지 "acs": 카운티 이름, FIPS를 받으시겠습니까?

library(acs) 
geo.lookup(state="CA", place="San Francisco") 

> geo.lookup(state="CA", place="San Francisco") 
    state state.name   county.name place    place.name 
1  6 California     <NA> NA      <NA> 
2  6 California San Francisco County 67000  San Francisco city 
3  6 California  San Mateo County 73262 South San Francisco city 

우리가 아는 한이 도시는 다른 군의 일부가 될 수 있습니다 :

나는 도시에 군 정보를 얻기 위해 다음 코드를 시도했다. 대부분 두 번째로 갈 것입니다.

> geo.lookup(state="CA", place="San Francisco")[2,] 

    state state.name   county.name place   place.name 
2  6 California San Francisco County 67000 San Francisco city 

기본적으로

내 질문 : 상태 약어, 카운티 이름 및 카운티 FIPS를 구할 수있는 방법이 있습니까? documentation에서 답을 찾을 수 없습니다.

더 처리 (choroplethr와 일치)하려면 county.name의 마지막 "카운티"와 place.name의 "도시"를 제거해야합니다.

답변

1

다음은 상태 약어, 카운티 이름 및 카운티 FIPS를 예제에 추가하는 방법입니다. R에는 주 이름 및 주 약어에 대한 기본 제공 변수가 있습니다. FIPS 코드는 Census Bureau 웹 사이트에서 csv 파일을 읽었습니다.

library(acs) 
library(tidyverse) 

states <- cbind(state.name, state.abb) %>% tbl_df() 

fips <- 
    read_csv(
    "https://www2.census.gov/geo/docs/reference/codes/files/national_county.txt", 
    col_names = c("state.abb", "statefp", "countyfp", "county.name", "classfp") 
) 

query <- geo.lookup(state = "CA", place = "San Francisco")[2, ] %>% 
    tbl_df() %>% 
    left_join(states, by = "state.name") %>% 
    left_join(fips, by = c("county.name", "state.abb")) 

query 

# # A tibble: 1 x 9 
# state state.name   county.name place   place.name state.abb statefp countyfp classfp 
# <chr>  <chr>    <chr> <int>    <chr>  <chr> <chr> <chr> <chr> 
# 1  6 California San Francisco County 67000 San Francisco city  CA  06  075  H6 

당신이 당신의 질문의 끝에서 참고로, 당신이 choroplethr에 맞게 만들기 위해 좀 더이 데이터를 정리해야 할 수도 있습니다.

+0

꽤 잘 작동합니다. 내가 statefp + countyfp를 병합하고 choroplethr와 일치시키기 위해 첫 번째 "0"을 제거해야하는 것처럼 보입니다. 마지막 하나 : 이것을 통해 MSA fips 코드를 얻을 수 있습니까? 개선 아이디어 : Census를 로케이 팅하는 대신에, 라이브러리 (티그리스) 데이터 (fips_codes)' – Christopher

+0

(실제로 MSA/CBSA 모양을 시각화 할 수 있는지 여부는 아직 모른다. choroplethrZip의'zip.regions.'에서'cbsa'를 사용했지만 예제를 찾지 못했습니다.) – Christopher