#r #ms-access #data-dictionary
#r #ms-access #словарь данных
Вопрос:
Я работаю с некоторыми большими правительственными наборами данных из Министерства транспорта, которые доступны в виде текстовых файлов с разделителями табуляции, сопровождаемых словарями данных. Например, файл автоматических жалоб представляет собой файл немаркированных данных размером 670 МБ (при распаковке) и поставляется со словарем. Вот несколько выдержек:
Last updated: April 24, 2014
FIELDS:
=======
Field# Name Type/Size Description
------ --------- --------- --------------------------------------
1 CMPLID CHAR(9) NHTSA'S INTERNAL UNIQUE SEQUENCE NUMBER.
IS AN UPDATEABLE FIELD,THUS DATA FOR A
GIVEN RECORD POTENTIALLY COULD CHANGE FROM
ONE DATA OUTPUT FILE TO THE NEXT.
2 ODINO CHAR(9) NHTSA'S INTERNAL REFERENCE NUMBER.
THIS NUMBER MAY BE REPEATED FOR
MULTIPLE COMPONENTS.
ALSO, IF LDATE IS PRIOR TO DEC 15, 2002,
THIS NUMBER MAY BE REPEATED FOR MULTIPLE
PRODUCTS OWNED BY THE SAME COMPLAINANT.
Некоторые поля содержат внешние ключи, перечисленные следующим образом:
21 CMPL_TYPE CHAR(4) SOURCE OF COMPLAINT CODE:
CAG =CONSUMER ACTION GROUP
CON =FORWARDED FROM A CONGRESSIONAL OFFICE
DP =DEFECT PETITION,RESULT OF A DEFECT PETITION
EVOQ =HOTLINE VOQ
EWR =EARLY WARNING REPORTING
INS =INSURANCE COMPANY
IVOQ =NHTSA WEB SITE
LETR =CONSUMER LETTER
MAVQ =NHTSA MOBILE APP
MIVQ =NHTSA MOBILE APP
MVOQ =OPTICAL MARKED VOQ
RC =RECALL COMPLAINT,RESULT OF A RECALL INVESTIGATION
RP =RECALL PETITION,RESULT OF A RECALL PETITION
SVOQ =PORTABLE SAFETY COMPLAINT FORM (PDF)
VOQ =NHTSA VEHICLE OWNERS QUESTIONNAIRE
Для Microsoft Access есть инструкции по импорту, которых у меня нет, и я бы не использовал, если бы знал. Но я ДУМАЮ, что этот словарь данных должен был быть машиночитаемым.
Мой вопрос: является ли этот словарь данных каким-то стандартным форматом? Я пытался поискать в Google, но это сложно сделать без правильной терминологии. Я хотел бы импортировать в R, хотя я гибкий, если это можно сделать программно.
Комментарии:
1. Я думаю, вам придется написать R-скрипт, который может извлекать ваши переменные, используя информацию в
Type/Size
столбце. Это то, что мне приходилось делать при работе с некоторыми специальными таблицами переписи.2. Вы можете читать с помощью read.delim, если в нем есть вкладки. Вероятно, необходимо выполнить некоторые предварительные правки, чтобы избавиться от «——» мусора. Затем задача будет состоять в том, чтобы собрать многострочный текст в четвертом столбце. Я бы потратил время на то, чтобы первый столбец был чем-то иным, чем «», чтобы создать идентификатор записи. О, подождите, вы на самом деле не предоставили данные? Я думал, вы хотите, чтобы этот первый набор записей считывался. Вместо этого вы ожидали, что мы загрузим файл размером 157 МБ?
3. Конечно, нет! Я полностью способен импортировать данные, разделенные табуляцией. Я надеялся, что формат словаря данных (выше) был узнаваемой формой (способ, которым SAS или SPSS могут выводить подробную ключевую информацию).