Как извлечь данные продольных временных рядов из кадра данных в R для анализа временных рядов и вменения - PullRequest
0 голосов
/ 10 июля 2011

Спасибо Джорану за помощь в группировке данных в моем предыдущем вопросе , где я хотел уменьшить размер фрейма данных в R, чтобы я мог выполнять анализ временных рядов наданные.

Теперь я хотел бы на самом деле дополнительно извлечь данные из кадра данных.Фрейм данных состоит из 6 столбцов.Каждый столбец с 1 по 5 имеет отдельные имена / значения, такие как район, пол, год, месяц и возрастная группа.Шестой столбец - это количество смертей для этой конкретной комбинации.Выдержка выглядит следующим образом:

             District  Gender Year Month    AgeGroup TotalDeaths
             Northern    Male 2006    11        01-4           0
             Northern    Male 2006    11       05-14           1
             Northern    Male 2006    11         15+          83
             Northern    Male 2006    12           0           3
             Northern    Male 2006    12        01-4           0
             Northern    Male 2006    12       05-14           0
             Northern    Male 2006    12         15+         106
             Southern  Female 2003     1           0           6
             Southern  Female 2003     1        01-4           0
             Southern  Female 2003     1       05-14           3
             Southern  Female 2003     1         15+         136
             Southern  Female 2003     2           0           6
             Southern  Female 2003     2        01-4           0
             Southern  Female 2003     2       05-14           1
             Southern  Female 2003     2         15+         111
             Southern  Female 2003     3           0           2
             Southern  Female 2003     3        01-4           0
             Southern  Female 2003     3       05-14           1
             Southern  Female 2003     3         15+         141
             Southern  Female 2003     4           0           4

Я новичок во временных рядах, и я думаю, что мне нужно будет сделать это для анализа данных: мне нужно будет извлечь объекты данных меньшего временного рядаэто уникальные и продольные данные.Например, из этого приведенного выше фрейма данных я хочу извлечь меньшие объекты данных, подобные этому, для каждого района, пола и возраста:

             District  Gender Year Month    AgeGroup TotalDeaths
             Northern    Male 2003     1        01-4           0
             Northern    Male 2003     2        01-4           1
             Northern    Male 2003     3        01-4           0
             Northern    Male 2003     4        01-4           3
             Northern    Male 2003     5        01-4           4
             Northern    Male 2003     6        01-4           6
             Northern    Male 2003     7        01-4           5
             Northern    Male 2003     8        01-4           0
             Northern    Male 2003     9        01-4           1
             Northern    Male 2003    10        01-4           2
             Northern    Male 2003    11        01-4           0
             Northern    Male 2003    12        01-4           1
             Northern    Male 2004     1        01-4           1
             Northern    Male 2004     2        01-4           0

Переход к

             Northern    Male 2006    11        01-4           0
             Northern    Male 2006    12        01-4           0

Я пытался что-то в Excel,Создание сводных таблиц с этими данными, а затем попытался извлечь строку информации - но не удалось.После этого я обнаружил reshape в R, но я либо не знаю кодов, либо, возможно, не должен использовать reshape для этого.

Я даже не уверен, что это правильный / способпроанализировать эти данные временных рядов поперечного сечения, т.е.если для анализа этих данных требуется другой формат с такими функциями, как read.ts(), ts() и arima().

Моя конечная цель - использовать эти данные и пакет amelia2 с его функциямивменяется в вину за отсутствие TotalDeaths за определенные месяцы в 2007 и 2008 годах, когда данные, конечно, отсутствуют.

Любая помощь, как это сделать и, возможно, предложения о том, как решить эту проблему, будет принята с благодарностью.

1 Ответ

0 голосов
/ 10 июля 2011

Для узкого вопроса о том, как лучше извлечь:

subset(dfrm, subset=(District=="Northern" &  Gender=="Male" &  AgeGroup=="01-4"))

subset также имеет аргумент select для сужения столбцов. Я подозреваю, что поиск по термину «экстракт», который вы использовали, вызвал бы только попадания на страницу «Экстракт», которая на удивление не имеет ссылки на subset. (Я сократил конечный пробел из более ранней версии спецификации AgeGroup.)

...