Извлечение данных переписи с использованием пакета ACS R для всех почтовых индексов и получение прогнозов на будущее

У меня есть пара вопросов о том, как мне лучше всего использовать пакет acs R. Заранее спасибо за помощь.

  • Я хотел бы создать всеобъемлющий фрейм данных, который представляет собой справочную таблицу со всеми данными переписи, которые я могу получить из их API для каждого почтового индекса. В настоящее время я просто смотрю несколько отдельных таблиц с использованием кода R, как показано в примере ниже. Есть ли лучший способ найти все доступные таблицы и автоматически создать набор данных таблицы данных с заполненными именами столбцов? Мне известна функция acs.lookup, но я хотел бы загрузить все таблицы и получить данные для их почтовых индексов. Есть ли способ получить список всех таблиц из вывода acs.lookup или, может быть, полный список доступных таблиц?

  • Я также хотел бы получить данные будущих проекций для максимально возможного количества переменных. Я думаю, что могу рассчитать прогнозы, которые я нашел, используя вышеупомянутые методы, используя несколько лет (2014, 2013, 2012, 2011) и используя пакет acs14lite R на 2014 год. Прежде чем я сделаю это, мне интересно, есть ли в самой переписи США будущие прогнозы, используя это данные ACS или что-то еще?

    Создайте пользовательскую географию

    использовать все почтовые индексы

    zip_geo = geo.make(zip.code = "*")

    Создать фрейм данных гонки

    получить данные о гонке

    race.data = acs.fetch(geography=zip_geo, table.number = "B03002", col.names = "pretty", endyear = 2013, span = 5)

    создать фрейм данных демографии

    zip_demographics = data.frame(region = as.character(география (race.data)$zipcodetabulationarea), total_population = as.numeric(оценка (race.data [, 1])))

    zip_demographics $ region = as.character (zip_demographics $ region)

    преобразовать в data.frame

    race_df = data.frame (white_alone_not_hispanic = as.numeric (оценка (race.data[,3])), black_alone_not_hispanic = as.numeric(оценка (race.data[,4])), asian_alone_not_hispanic = as.numeric(оценка (race.data[,6])), hispanic_all_races = as.numeric(оценка (race.data [, 12])))

    zip_demographics $ percent_white = (race_df $ white_alone_not_hispanic / zip_demographics $ total_population * 100) zip_demographics $ percent_black = (race_df $ black_alone_not_hispanic / zip_demographics $ total_population * 100) zip_demographics $ percent_asian = (race_df $ asian_alone_not_hispanic / zip_demographics $ total_population * 100) zip_demographics $ percent_hispanic = (race_df $ hispanic_all_races / zip_demographics $ total_population * 100)

2 ответа

Вы можете скачать копию всех кодов в оболочках таблицы 2010 по следующей ссылке. Он начнет загрузку и файл Excel, когда вы нажмете на него.

ACS Table Shells Скачать

я загрузил этот документ как фрейм данных, отформатировал столбец с соответствующими кодами, а затем просто использовал пример адресов ячеек: povertyNumerator<acsTable[781,2] тянуть в переменную.

Вы не можете полностью автоматизировать процесс, потому что вам нужно решить, как разбить "категории" ответов и сделать свою собственную математику, но помимо этого вы можете довольно быстро работать с этой таблицей и некоторыми навыками пакета ACS.

Когда я пытаюсь запустить приведенный выше код, я получаю следующие сообщения об ошибках:

      > race.data = acs.fetch(geography=zip_geo, table.number = "B03002", col.names = "pretty", endyear = 2013, span = 5)
trying URL 'http://web.mit.edu/eglenn/www/acs/acs-variables/acs_5yr_2013_var.xml.gz'
Content type 'application/xml' length 720299 bytes (703 KB)
downloaded 703 KB

Error in .subset2(x, i, exact = exact) : subscript out of bounds
In addition: Warning message:
In (function (endyear, span = 5, dataset = "acs", keyword, table.name,  :
  temporarily downloading and using archived XML variable lookup files;
  since this is *much* slower, recommend running
  acs.tables.install()

И вывод race.data не производится. Есть идеи, почему это происходит?

Другие вопросы по тегам