Как использовать R для загрузки табличных данных для блоков Census 2000?

Попытка использовать пакет tidycensus для загрузки данных.

Насколько я читал, tidycensus поддерживает блоки для 2000 года. работает, группа блоков работает, блоки не работают

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 "Проверка данных SF3 API..." 1 "Ошибка клиента Неверный запрос Ошибка клиента: (400) Неверный Запрос" Ошибка в stri_replace_first_regex(строка, шаблон, fix_replacement(замена), : аргумент str должен быть вектором символов (или объектом, к которому можно принудить) Ошибка в collect.default(., ключ = переменная, значение = значение, -GEOID, - ИМЯ):
объект 'ИМЯ' не найден

Я знаю, что блок должен быть правильной геометрией; Мне просто нужен подсчет населения/блока, который находится в файл переписи населения 2000 года SF1. Не уверен, почему tidycensus не работает. Вытягивание данных за 2010 год, кажется, работает. Но не 2000.

totalcensus не охватывает перепись 2000 г.


person Mox    schedule 20.12.2017    source источник
comment
Если бы. Это может быть просто очень простая ошибка. Но я не могу понять, что.   -  person Mox    schedule 20.12.2017
comment
Можете ли вы поделиться большей/всей/короткой версией вашего кода, чтобы мы могли попробовать его сами?   -  person jesstme    schedule 20.12.2017
comment
Помимо некоторых загрузок библиотек, все вышеперечисленное. Тракт работает, группа блоков работает, блок не работает.   -  person Mox    schedule 20.12.2017
comment
Если пакеты необходимы для работы кода, поделитесь, какая библиотека загружается. И что такое ... в конце первого фрагмента кода?   -  person jesstme    schedule 20.12.2017
comment
Давайте продолжим это обсуждение в чате.   -  person jesstme    schedule 20.12.2017
comment
github.com/walkerke/tidycensus/issues/13   -  person Mox    schedule 20.12.2017
comment
Помните, что не все данные доступны на уровне блоков.   -  person Elin    schedule 20.12.2017
comment
Проверено; переменная, которую я использую, представляет собой простой подсчет населения, доступный для всех уровней географии.   -  person Mox    schedule 20.12.2017


Ответы (1)


Я автор tidycensus; Я ответил на это на странице проблем GitHub (https://github.com/walkerke/tidycensus/issues/51), но я опубликую здесь.

Это связано с ограничением Census API; блочные данные за 2000 год доступны только по переписным участкам в округах в API, и в данный момент у меня нет в пакете функций для обработки этого. Я добавил новое сообщение об ошибке в пакет, чтобы объяснить это. Мои рекомендуемые альтернативы:

  • Используйте NHGIS (http://www.nhgis.org), чтобы загрузить данные и пакет ipumsr (https://github.com/mnpopcenter/ipumsr), который предоставляет отличный новый интерфейс для использования его в R.
  • Используйте пакет censusapi (https://github.com/hrecht/censusapi), который позволяет создавать любые Запрос API переписи, который вы хотите. Если бы вам нужно было сгенерировать вектор идентификаторов участков для желаемого округа, вы, вероятно, могли бы использовать map_df() муррра для итерации по этим идентификаторам и получения нужного результата.
person kwalkertcu    schedule 24.12.2017
comment