Кластерный анализ пространства и времени
Данные обладают пространственным и временным контекстом — все происходит в каком-то месте и в какое-то время. Несколько инструментов, в том числе Анализ горячих точек (Hot Spot Analysis), Анализ кластеров и выбросов (Cluster and Outlier Analysis) и Анализ группирования (Grouping Analysis), позволяют использовать эти аспекты ваших данных. Если учитывать пространственный и временной контекст данных, можно ответить на следующие вопросы:
- Где находятся "горячие" пространственно-временные точки преступлений? Если вы криминалист, вы можете использовать пространственно-временные результаты инструмента Анализ горячих точек (Hot Spot Analysis), чтобы убедиться, что полицейские ресурсы распределены наиболее эффективным образом. Эти ресурсы должны быть в нужном месте и в нужное время.
- Где встречаются аномалии по затратам? Чтобы выявить мошенничество, можно использовать инструмент Анализ кластеров и выбросов (Cluster and Outlier Analysis) для тщательного изучения затрат и поиска выбросов в пространстве и времени. Внезапное изменение закономерностей или частоты затрат может указывать на подозрительную активность.
- Каковы характеристики вспышек заболеваний, вызванных бактериями? Предположим, что вы изучаете образцы сальмонеллы из молочных ферм в вашей области. Для классификации отдельных вспышек можно запустить инструмент Анализ группирования (Grouping Analysis) с данными образцов, ограничив членство в группе в пространстве и времени. Образцы, близкие в пространстве и времени, скорее всего, связаны с одной вспышкой.
Несколько инструментов в наборе инструментов Пространственная статистика (Spatial Statistics) оценивают каждый объект в контексте ближних к нему объектов. После определения соседских отношений для пространства и времени, традиционный пространственный анализ становится пространственно-временным анализом. Для определения соседских отношений с использованием пространственных и временных параметров используйте инструмент Построить матрицу пространственных весов (Generate_Spatial_Weights_Matrix) и выберите опцию SPACE_TIME_WINDOW для параметра Концептуализация пространственных отношений (Conceptualization of Spatial Relationships). Затем укажите значение параметра Пороговое расстояние (Threshold Distance) и временной интервал (Тип интервала даты/времени (Date/Time Interval Type) и Значение интервала даты/времени (Date/Time Interval Value)). Если указать расстояние в 1 км и временной интервал 7 дней, объекты на расстоянии 1 км с датой в пределах 7 дней друг от друга будут анализироваться вместе. Аналогично, близкие объекты на расстоянии 1 км друг от друга, которые не попадают в семидневный интервал, не будут считаться соседними объектами.
Временные мгновенные снимки
Один из распространенных методов для анализа пространственных и временных тенденций в данных заключается в разбиении их на последовательность временных мгновенных снимков. Например, можно создать отдельные наборы данных для первой, второй, третьей четвертой и пятой недели. Затем можно проанализировать каждую неделю и представить результаты анализа как последовательность карт или в виде анимации. Хотя это эффективный способ отображения тенденций, способ разделения данных немного случаен. Например, если вы анализируете данные по неделям, как расположить границу между частями? Следует ли разбивать данные между воскресеньем и понедельником? Может быть, использовать период с понедельника по четверг, а затем с пятницы по воскресенье? Существуют ли какие-то особенности анализа данных по неделям? Будет ли анализ по дням или месяцам более эффективным? Последствия могут быть важными, если при делении (например, делении событий воскресенья от понедельника) разбиваются объекты, которые должны быть связаны. В примере ниже 6 объектов попадают в пространственно-временное окно с расстоянием 1 км и интервалом 7 дней объекта 31 января (Jan 31). Но если данные анализируются по месяцам, только один объект будет считаться соседом.
При определении отношений объектов с помощью SPACE_TIME_WINDOW вы не создаете снимки данных. Вместо этого все данные используются в анализе. Объекты, расположенные близко друг к другу в пространстве и времени, анализируются вместе, так как все отношения объектов оцениваются относительно расположения и временной метки целевого объекта. В примере выше (A.) пространственно-временное окно с расстоянием 1 км и интервалом 7 дней позволяет найти шесть соседей для объекта 31 января (Jan 31).
Предположим, вы анализируете лесные пожары в регионе. Если запустить инструмент Анализ горячих точек (Hot Spot Analysis) с использованием опции FIXED_DISTANCE_BAND по умолчанию, для концептуализации отношений объектов, в результате будет получена карта с расположениями статистически значимыми горячими и холодными точками лесных пожаров. Если затем выполнить анализ еще раз, но на этот раз с пространственными отношениями, определенными с помощью SPACE-TIME WINDOW, можно обнаружить, что некоторые из горячих точек являются сезонными. Понимание этой временной характеристики лесных пожаров сильно влияет на то, как вы распределяете ресурсы по борьбе с пожарами.
Визуализация пространственно-временных результатов
Тепловые карты обычно отображают области с высокой интенсивностью (горячие точки) красным цветом, а области с малой интенсивностью (холодные точки) синим цветом. На графике ниже красные области — это места с наибольшим числом вызовов службы спасения. Синие области — это места с относительно небольшим числом вызовов. Как можно добавить сведения о временном измерении частоты вызовов на эту карту? Как можно эффективно отобразить такие аспекты, как отдельные вспышки, серии преступлений, последствия внедрения новой технологии и сезонные колебания?
Представление трехмерных данных (x, y и время) на двухмерной карте — это сложная задача. Обратите внимание на то, что в примере ниже нельзя разглядеть, что существует две разные горячих точки (друг с другом в пространстве, но разделенные по времени), пока не просмотреть данные в трех измерениях. Если выбрать объекты на основе временного поля, можно понять, какие объекты связаны по времени, а какие разделены.
Существует, по крайней мере, два способа визуализации выходных данных пространственно-временного анализа. Трехмерная визуализация эффективна при наличии небольшой области изучения и ограниченном числе объектов. Такой подход позволяет представить пространственно-временные отношения на одной карте. Еще один метод отображения пространственно-временных процессов — использование анимации. Примеры ниже концентрируются на визуализации пространственно-временных кластеров.
Анимация
Для анимации таких кластеров активируйте время в результирующих объектах, откройте Бегунок времени (Time Slider) в панели инструментов Инструменты (Tools) и щелкните Воспроизвести (Play). Установите временное окно, которое позволит увидеть достаточно данных на одном шаге. Если вы раньше не создавали анимации, проследуйте по ссылкам ниже.
3D
Еще один мощный способ визуализации результатов анализа пространственно-временного кластера — это использование 3D визуализации. При использовании этого метода время становится третьим измерением, а точечные объекты вытягиваются для отражения временной последовательности. На 3D графике выше, например самые старые события ближе всего к земле, а недавние события сильнее возвышаются над землей (кажутся ближе к смотрящему).
Чтобы создать 3D представление данных, как указано выше, необходимо использовать ArcGlobe (включено в стандартную установку ArcGIS for Desktop).
Сначала запустите анализ пространственно-временного кластера в ArcGlobe, а затем создайте новое поле в выходном классе объектов, чтобы отобразить высоту каждого объекта. Для этого примера высота основана на числе дней, прошедших после первого события в наборе данных. Для расчета времени используется скрипт VB и функция даты DateDiff, как показано ниже.
Если у вас не получается добавить новое поле к выходному классу объектов из-за блокировки, сохраните документ ArcGlobe, и откройте его заново или экспортируйте выходной класс объектов в новый набор данных, добавьте его в документ карты и настройте символы в соответствии с выходным классом объектов.
Затем отсортируйте объекты по дате, чтобы можно определить самую раннюю дату. Она будет использоваться для вычисления значений полей времени. Щелкните правой кнопкой мыши новое поле и выберите команду Калькулятор поля (Field Calculator). В калькуляторе полей щелкните функции типа Дата (Date) и выберите DateDiff в правой части калькулятора, как показано ниже. Введите DateDiff ("d", "3/1/2011", [DateField]), заменив строку дату на самую раннюю дату в классе объектов и указав имя нового поля для параметра [DateField] ("d" обозначает, что интервал должен быть указан в днях).
Пример выше использует VB для вычисления полей даты и времени. Эквивалентное выражение Python:
(datetime.datetime.strptime(!Date_Con!, "%m/%d/%Y ").date() - datetime.date(2011, 3, 11)).days
Далее требуется изменить свойства отображения ArcGlobe, чтобы объекты в наборе данных показывались рельефными. Для этого щелкните выходной класс объектов правой кнопкой мыши и выберите Свойства (Properties). В диалоговом окне свойств Набор данных по высотам (Elevation). В разделе Высоты из объектов (Elevation from features) установите флажок Использовать постоянное значение или выражение (Use constant value or expression), а затем нажмите кнопку Калькулятор (Calculator) и укажите новое поле, созданное с помощью функции DateDiff. ArcGlobe поднимет объекты на основе поля прошедшего времени. Если объекты не отображаются на достаточной высоте, можно попробовать умножить поле прошедшего времени на константу. В свойстве Использовать постоянное значение или выражение (Use constant value or expression) на вкладке Набор данных по высотам (Elevation) это будет выглядеть следующим образом: [TimeLapse] *100, как показано ниже.
Затем можно использовать инструмент навигации ArcGlobe для наклона и просмотра результатов с различных углов и точек зрения. Полученная карта может выглядеть следующим образом: