Визуализация многомерных дихотомий

Опубликовал: pvi777 в категорию Бизнес / Маркетинг - Дата добавления: 16.12.2018, 18:11


Содержание

Введение

Многомерные дихотомии (греч. διχο - на две части + τομία - сечение) часто возникают в практических задачах: в маркетинговых исследованиях, в анализе анкетных данных, данных соцопросов, медицине (наличие у пациента тех или иных признаков), контроле качества и т.д. 

Дихотомия кодирует нулем и единицей ответы типа «нет» и «да».

В многомерной дихотомии имеется набор нулей и единиц, соответствующий многим вопросам и ответам. 

Например, предположим, что мы проводим исследование-опрос предпочтений покупателей в супермаркете. В анкету мы включаем вопросы, на которые можно отвечать либо «да», либо «нет». В итоге, после проведения опроса, всех покупателей можно разделить на группы, согласно набору ответов на вопросы.

Если, например, вопросов в анкете было всего два (двумерная дихотомия), то всего может получиться 4 группы покупателей («да», «да»; «да», «нет»; «нет», «да»; «нет», «нет»). Подобное представление данных довольно понятно для малых размерностей дихотомий. Однако если количество вопросов в анкете возрастет до пяти или больше, то целостное представление о структуре данных начинает пропадать. 

Поэтому важно уметь визуально представить многомерные дихотомийные данные... 

Увидеть многомерные данные сложно - один из способов - с помощью многомерных кубов...

Многомерные кубы

Чтобы представлять себе многомерные кубы, попробуем понять структуру кубов малой размерности (меньше 4-х). 

Любой многомерный куб состоит из набора вершин и ребер, соединяющих вершины.

Каждая вершина помечена бинарным кодом (набор бит), состоящим из нулей и единиц. Длина кода определяется размерностью куба. 

В одномерном кубе будет содержаться всего 2 вершины. Одна из них будет помечена нулем, а другая 1-ей. 

Ребро, соединяющее две вершины, можно условно понимать как переход от одной вершины к другой с изменением в наборе одного нуля на единицу. См. Рис.1.

 Рис. 1. Одномерный куб 

В двумерном кубе каждая вершина кодируется уже 2-мя битами. Так как куб двумерный, изменение цифры при переходе по ребру может происходить как в первом бите, так и во втором. См. Рис.2.

 Рис. 2. Двумерный куб  

На Рис.2. изображен двумерный куб, который может проиллюстрировать группы покупателей в супермаркете, описанные во введении (см. выше), если принять за 0 – ответ «нет», а за 1 – «да». 

По аналогии строиться и трехмерный куб. См. Рис.3. 

Появление третьего измерения увеличивает количество вершин в два раза, т.к. каждая вершина в двумерном кубе может изменяться по новому измерению, принимая либо 0, либо 1.

 Рис. 3. Трехмерный куб. 

На Рис.3. желтой линией выделен набор ребер, переводящий вершину с кодом (0,0,0) в вершину с кодом (1,1,1), последовательно изменяя один из битов кода: 

(0,0,0) -> (1,0,0) -> (1,1,0) -> (1,1,1) 

Перед тем как строить 4-х мерный куб попробуем определить количество вершин в нем. 

Как уже было замечено выше, каждый раз добавляя новое измерение, мы увеличиваем количество вершин в два раза. Из этого можно заключить, что количество вершин в N-мерном кубе равно , значит в четырехмерном кубе 16 вершин. 

На Рис. 4. изображен четырехмерный куб. Т.к. осей (измерений) всего три, то четвертое измерение можно представить как наклонную линию. По этой оси будет изменяться 4-ый бит в бинарном коде каждой вершины.

 Рис. 4. Четырехмерный куб 

Можно считать, что четырехмерный куб состоит из двух трехмерных кубов и набора ребер 4-го измерения, один из которых получен смещением по 4-ой оси. При этом первый куб имеет в коде вершины, в котором на месте 4-ого бита, стоит ноль, а второй абсолютно те же коды, но с единицей на 4-м разряде.

Обобщая описанный выше способ представления n-мерных кубов, получаем, что n – мерный куб, состоит из двух (n-1) – мерных и  ребер n-го измерения. См. Рис.5.

 Рис. 5. Пятимерный куб 

Пример многомерных дихотомий

Рассмотрим файл Titanic2.sta. См. Рис.6.

 Рис. 6. Таблица данных Titanic2.sta  

В этой таблице находятся данные по пассажирам «Титаника». Каждый пассажир характеризуется пятью параметрами. 

Всего наблюдений 1031. Переменных пять, все они категориальные и кодируются всего 2 значениями (0 или 1). Смотрите таблицу ниже.

Переменные

0

1

CLASS (класс)

FIRST

THIRD

AGE (возраст)

ADULT

CHILDREN

GENDER (пол)

MALE

FEMALE

SURVIVAL (выжил или нет)

SURVIVAL

MISSING

SWIM (умеет ли плавать)

YES

NO

Данные числовые коды можно посмотреть (или изменить), в меню Данные/Редактор текстовых меток, предварительно выбрав нужную переменную левым щелчком мышки на ее названии в таблице данных. См. Рис.7.

 Рис. 7. Редактор текстовых меток. Выбрана переменная «age».  

Исходя из формата данных, можно построить пятимерную дихотомию. Количество измерений определяется количеством категориальных бинарных переменных в таблице. 

Попробуем построить пятимерный куб.

Пометим каждое из пяти измерений (разряд в бинарном коде) одной из переменных в таблице. Пусть: 

1-й измерение отвечает за класс пассажиров (class) 

2-е - за возраст (age) 

 3-е - за пол (gender) 

4-е - за выживаемость после катастрофы (survival) 

5-е - за умение плавать (swim)

После такого кодирования все пассажиры разделяются на группы, каждая из которых кодируется 5 битами (0 или 1). 

Например, пассажир, относящийся к группе с кодом (0,0,0,0,0) – это взрослый (age) мужчина (gender), не умеющий плавать (swim), плывущий на корабле в первом классе (class), выживший после катастрофы (survival). См. Таблицу с кодами выше. 

На Рис. 8. построен пятимерный куб согласно таблице данных. В метках вершин рядом с кодом группы, указано число, соответствующее количеству пассажиров относящихся к данной группе. На рисунке оно обведено красным прямоугольником.

 Рис. 8. Пятимерный куб на основе данных Titanic2.sta 

Из рисунка видно, что взрослых мужчин в первом классе, не умеющих плавать, выживших после катастрофы - нет. Это группа с кодом (0,0,0,0,0). 

Стоит отметить, что структура куба отражает информацию не только по отдельным вершинам, но и по целым множествам вершин. 

На Рис.8. видно четыре трехмерных куба соединенных между собой линиями. Кубы, изображенные сверху и слева на рисунке, вместе образуют группу пассажиров умеющих плавать, потому что все вершины, принадлежащие этим двум кубам, в последнем бите имеют 1 (swim = YES). Оставшиеся два куба характеризуют соответственно не умеющих плавать. 

Аналогично, верхний и правый куб вместе характеризуют группу выживших после катастрофы и т.д.

Визуализация многомерных кубов

Описание

Программа N-cube Model реализована на языке STATISTICA VISUAL BASIC и позволяет строить N-мерные кубы в среде STATISTICA.

Стандартный пакет включает в себя 3 файла: cube.svb, setup.svb, icon_cub.bmp. 

Программу можно либо интегрировать в систему STATISTICA через запуск и выполнение макроса setup.svb, либо просто использовать макрос cube.svb.

Если программа была проинсталлирована (через setup.svb) в систему STATISTICA, то ее можно запустить через панель инструментов в системе. Иначе можно просто запускать на выполнение макрос cube.svb. 

После запуска программы появится диалоговое окно. См. Рис. 1. 

 Можно задавать:

  • размерность куба ( N ), от N = 3 до N = 7.

  • выделять слой в кубе, помеченный кодами ( Active Cut Level ), указывается номер слоя от 0 до N+1. Если номер равен 0, то помечаются все уровни.

  • строить куб пошагово с задержкой ( Active Time Delay ), задается в миллисекундах.

  • также, при наличии открытой таблицы с данными, можно строить многомерный куб по данным в таблице. Размерность куба в этом случае разумнее установить равной количеству бинарных переменных в таблице. ( Count ActiveDataSet ).

После запуска приложения на экране диалоговое окно, в котором можно задать вышеперечисленные параметры для построения куба. См. Рис.9.

 Рис. 9. Диалоговое окно с параметрами многомерного куба.  

После нажатия на кнопку ОК, появится рисунок с моделью. См. Рис.10.

 Рис. 10. Пятимерный куб с помеченным 2-м слоем.  

Так как программа интегрирована в систему STATISTICA, то к полученному рисунку применимы все графические средства. Например, можно добавлять новые объекты через графическую панель, вращать график или использовать инструмент кисть, для отображения меток вершин в случае, когда была задана соответствующая опция. 

Программная реализация

Многомерный куб строится перебором всевозможных измерений (ребер), по которым вершина (0,0,…,0) переводится в (1,1,…,1). 

Любой такой путь (последовательность ребер и вершин) можно увидеть, если щелкнуть левой клавишей мышки по какому-либо ребру, которое принадлежит данному пути.

Программно путь представляется в виде последовательности бинарных кодов вершин, которые хранятся во внутренней таблице данных.

После формирования внутренней таблицы с бинарными кодами, начинается процесс визуализации данных многомерного куба. Последовательно перебираются все пути. Если установлена задержка ( Active Time Delay ), то программа будет «простаивать» между визуализацией соседних путей из таблицы.

Если установлена опция выделения слоя (Active Cut Level), то после визуализации всего куба, вершины, сумма кодов которых равна заданному уровню слоя, будут помечены красными метками с текстовыми значениями.

Если установлена опция просчета куба по таблице с данными (Count ActiveDataSet), то все автоматически включается опция пометить все вершины и дополнительно к текстовым меткам всех вершин добавляется число, соответствующее количеству элементов, удовлетворяющих коду данной вершины (см. пример с Titanic2.sta выше). 

Заключение

Итак, мы показали, как строить многомерные кубы в STATISTICA.

Такие диаграммы очень полезны в маркетинге, банковской сфере, промышленности, медицине - везде, где возникают многомерные данные и нужно найти способ их увидеть.

В начало



Комментарии:


Оставить комментарий

Вход на сайт

Информация о проекте

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

Контакты