如何使用 R 下载 2000 年人口普查区块的表格数据?

How do I use R to download tabular data for Census 2000 blocks?

正在尝试使用 tidycensus 包下载数据。

据我所知,tidycensus 支持 2000 年的区块。Tract 有效,区块组有效,区块失败

library(tidycensus)
library(tidyverse)
library(viridis)
library(ggplot2)
library(dplyr)

#------Get Decennial Census Data
ut2000tract <- get_decennial(geography = "tract", variables = "P001001", 
year = 2000, sumfile = "sf1", key = mykey, state = "49", county = "035", 
geometry = FALSE)
ut2000BG <- get_decennial(geography = "block group", variables = 
"P001001", year = 2000, sumfile = "sf1",
key = mykey, state = "49", county = "035", geometry = FALSE)
ut2000block <- get_decennial(geography = "block", variables = "P001001", 
year = 2000, sumfile = "sf1", key = mykey, state = "49", county = "035", 
geometry = FALSE)

生成以下错误:

1 "Checking SF3 API for data..." 1 "Client error Bad Request Client error: (400) Bad Request" Error in stri_replace_first_regex(string, pattern, fix_replacement(replacement), : argument str should be a character vector (or an object coercible to) Error in gather.default(., key = variable, value = value, -GEOID, -NAME) :
object 'NAME' not found

我知道块应该是一个有效的几何体;我只想要 population/block 的计数,它在 Census 2000 SF1 file 中。不知道为什么 tidycensus 不工作。提取 2010 年的数据似乎有效。但不是 2000.

totalcensus 不包括 2000 年人口普查

我是 tidycensus 的作者;我在 GitHub 问题页面 (https://github.com/walkerke/tidycensus/issues/51) 上回答了这个问题,但我会在这里交叉 post。

这是由于人口普查的限制API; 2000 年的块数据只能通过 API 县内的人口普查区获得,目前我的包中没有处理此问题的功能。我在包中添加了一条新的错误消息来解释这一点。我推荐的替代品:

  • 使用 NHGIS (http://www.nhgis.org) to download the data and the ipumsr package (https://github.com/mnpopcenter/ipumsr),它提供了一个很好的新界面,可以在 R 中使用它。
  • 使用 censusapi 包 (https://github.com/hrecht/censusapi),它可以让您构建任何您想要的人口普查 API 查询。如果您要为您想要的县生成一个区域 ID 向量,您可能会使用 purrr 的 map_df() 来遍历这些 ID 并获得您需要的输出。