группировка наблюдений |
Здравствуйте, гость ( Вход | Регистрация )
группировка наблюдений |
12.03.2015 - 16:01
Сообщение
#1
|
|
Группа: Пользователи Сообщений: 11 Регистрация: 2.06.2014 Пользователь №: 26440 |
Нужно проверсти кластерный анализ. У меня 20 наблюдений, но каждое из них делится на 2. То есть
наблюдение 1 a=0,8765 b=0,645 наблюдение 2 a=0,297 b=0,397 Итак далее. эти a и b не отделимы, их в одном наблюдении надо учитывать. Но программа не может так работать. Она их воспринимает как разные наблюдения. Как же мне провести кластерный анализ по 20 наблюдениям не разделяя поднаблюдения? У меня было предположение для каждого наблюдения вывести среднее, но я не знаю насколько это будет точно. Просто не вдаваясь в подробности, 0,87 консистенция раствора. 0,6 и выше это хорошо. ниже плохо. Может быть у одного под 0,9, а у второго раствора 0,3. Среднее тут некорретно. Тут как бы вещество и ко-вещество. |
|
12.03.2015 - 17:49
Сообщение
#2
|
|
Группа: Пользователи Сообщений: 1202 Регистрация: 13.01.2008 Из: Челябинск Пользователь №: 4704 |
Нужно проверсти кластерный анализ. У меня 20 наблюдений, но каждое из них делится на 2. То есть наблюдение 1 a=0,8765 b=0,645 наблюдение 2 a=0,297 b=0,397 Итак далее. эти a и b не отделимы, их в одном наблюдении надо учитывать. Но программа не может так работать. Она их воспринимает как разные наблюдения. Как же мне провести кластерный анализ по 20 наблюдениям не разделяя поднаблюдения? У меня было предположение для каждого наблюдения вывести среднее, но я не знаю насколько это будет точно. Просто не вдаваясь в подробности, 0,87 консистенция раствора. 0,6 и выше это хорошо. ниже плохо. Может быть у одного под 0,9, а у второго раствора 0,3. Среднее тут некорретно. Тут как бы вещество и ко-вещество. Пока не понятно: у вас 20 наблюдений (случаев, строк), допустим каждое делится на 2, а сколько признаков (атрибутов, колонок)? Есть ли они вообще или у вас 20 строк и 2 колонки (а и b)? Опишите структуру данных и цель анализа подробнее (но не вдаваясь в специальные предметные подробности). |
|
12.03.2015 - 18:39
Сообщение
#3
|
|
Группа: Пользователи Сообщений: 11 Регистрация: 2.06.2014 Пользователь №: 26440 |
nokh, лучший способ оисать структуру данных, это её показать их.
тут пример в экселе
Прикрепленные файлы
|
|
13.03.2015 - 11:55
Сообщение
#4
|
|
Группа: Пользователи Сообщений: 1202 Регистрация: 13.01.2008 Из: Челябинск Пользователь №: 4704 |
nokh, лучший способ оисать структуру данных, это её показать их. тут пример в экселе Плохо что цель не написали, возможно вам и не кластерный анализ нужен... Но если исходить из того, что нужно найти наиболее похожие объекты из 20 и/или определделиться с числом групп (кластеров), то у меня 2 варианта. 1) Механистический. Раз нельзя усреднить сами данные по а и б, то нужно усреднить расстояния. Т.е. рассчитать расстояния между 20 объектами отдельно по а, и отдельно по б. Затем эти расстояния усреднить и по усреднённым расстояниям построить дендрограмму. 2) Редукция данных с обобщением. Организовать данные иначе: только 20 строк, а в колонках - 1) а, 2) б, 3) v1, 4) v2 и т.д. Далее эту матрицу обработать каким нибудь неограниченным (unconstrained) многомерным методом (главные компоненты или или факторный анализ) или, если предполагается не корреляция, а зависимость (например, v1, v2 и т.д. от а и б) - лучше ограниченным (PLS или анализ избыточности RDA). Выделить и интерпретировать по-существу процессов новые оси. Далее рассчитать значения по этим осям (типа факторные метки) для 20 объектов и провести кластеризацию по ним. Выгода здесь двойная. Во-первых, происходит обобщение данных и лучше понимается суть стоящих за ними процессов. Во-вторых, снижается влияние случайности выбора показателей для кластеризации на результат. Т.е. может оказаться что 3 показателя скоррелированы и отражают один процесс, а четвёрный - другой. При кластеризации исходных данных этот четвёртый будет заглушен тремя. Т.е. вы будете думать, что провели кластеризацию по всем данным, а реально - только по показателям, "работавшим" скоррелированно на какой-то один фактор. В случае кластеризации на факторных метках три скоррелированных показателя войдут в один фактор, а четвёртый даст второй и не потеряется. Метод лучше брать Уорда, а с расстояними возможны варианты в зависимости от того что более желательно вычленить. |
|
13.03.2015 - 14:42
Сообщение
#5
|
|
Группа: Пользователи Сообщений: 219 Регистрация: 4.06.2013 Из: Тверь Пользователь №: 24927 |
Мне также Ваша задача кажется странной: для кластеризации слишком мало наблюдений.
1. Если я правильно понимаю структуру данных , то , строго говоря, корректно только применение сложного интегративного метода - кластерного анализа последовательностей. Метод основан на вычислении расстояний между переходами. Программные реализации есть, но возникнут другие проблемы. Вероятно, есть код R или SAS, не знаю. 2. Я бы попробовал применить совсем простые методы: сделать анализ отдельно для а и b, а полученные модели сравнить: если они похожи, то это и есть решение задачи. Если отличаются существенно, то это тоже результат. При этом для выявления групп можно использовать не только стандартный кластерный анализ, но и многомерное шкалирование , EM -кластеризацию, карты Кохонена. 3. Для выполнения кластерного анализа лучше использовать двухэтапный кластерный анализ: автоматически определяется число кластеров, указывается качество кластеризации и важность переменных. Как вариант можно попробовать преобразовать данные: случаи с b задать как новые переменные к тем же наблюдениям. Считаю, что это корректно, так как переход всего в один шаг. P.S. Я посчитал что-то по этим данным и для а и для b - программа не видит кластеры. Что произойдет при переходе от 6 к 20 наблюдениям - не знаю . Сообщение отредактировал anserovtv - 13.03.2015 - 18:16 |
|
13.03.2015 - 18:40
Сообщение
#6
|
|
Группа: Пользователи Сообщений: 11 Регистрация: 2.06.2014 Пользователь №: 26440 |
Спасибо за Ваши подробные ответы. А как мне правильно расчитать расстояния?
В SPSS есть этот кластерного анализа последовательностей? Какой Вы имеете ввиду анализ провести отдельно для a и b? Если двухэтапный кластерный анализ, то есть ли в SPSS его реализация. Метод Уорда я точно знаю есть. |
|
13.03.2015 - 19:23
Сообщение
#7
|
|
Группа: Пользователи Сообщений: 219 Регистрация: 4.06.2013 Из: Тверь Пользователь №: 24927 |
Двухэтапный кластерный анализ есть в SPSS.
КА последовательностей есть в SQL Server, но это очень сложно, не советую. Вроде бы можно использовать и специальный модуль MATLAB. Это тоже сложно. Я применял двухэтапный КА для а и b. Метрику для вычисления расстояний нужно выбрать исходя из содержания данных. Очень много различных метрик для КА в пакете PAST. Я бы начал с многомерного шкалирования для предварительного определения числа групп (нужно предварительно вычислить расстояния!!) Вы плохо описали структуру данных, я не все понимаю. Сообщение отредактировал anserovtv - 13.03.2015 - 20:46 |
|
13.03.2015 - 19:52
Сообщение
#8
|
|
Группа: Пользователи Сообщений: 1202 Регистрация: 13.01.2008 Из: Челябинск Пользователь №: 4704 |
А как мне правильно расчитать расстояния? В SPSS есть этот кластерного анализа последовательностей? Какой Вы имеете ввиду анализ провести отдельно для a и b? Если двухэтапный кластерный анализ, то есть ли в SPSS его реализация. Метод Уорда я точно знаю есть. Я не знаю, ковыряться в SPSS нет времени. Но любые программы сначала считают расстояния, а потом уже по ним кластеризуют. Расстояния можно посмотреть где-то в результатах. Я бы пошёл по пути 2) с использованием анализа главных компонент для простоты. |
|
16.03.2015 - 11:28
Сообщение
#9
|
|
Группа: Пользователи Сообщений: 1091 Регистрация: 26.08.2010 Пользователь №: 22699 |
Нужно проверсти кластерный анализ. У меня 20 наблюдений, но каждое из них делится на 2. То есть наблюдение 1 a=0,8765 b=0,645 наблюдение 2 a=0,297 b=0,397 Итак далее. эти a и b не отделимы, их в одном наблюдении надо учитывать. Но программа не может так работать. Она их воспринимает как разные наблюдения. Как же мне провести кластерный анализ по 20 наблюдениям не разделяя поднаблюдения? У меня было предположение для каждого наблюдения вывести среднее, но я не знаю насколько это будет точно. Просто не вдаваясь в подробности, 0,87 консистенция раствора. 0,6 и выше это хорошо. ниже плохо. Может быть у одного под 0,9, а у второго раствора 0,3. Среднее тут некорретно. Тут как бы вещество и ко-вещество. Тут можно трансформировать данные в пригодный вид для анализа "не структурными" методами ML. Просто оставьте "a" неизменным, а вместо "b" (в отдельную переменную) пишите a-b или a/b (или обе величины сразу). Конечно это немного затруднит логику анализа, но всё имеет свою цену. |
|
17.03.2015 - 17:39
Сообщение
#10
|
|
Группа: Пользователи Сообщений: 219 Регистрация: 4.06.2013 Из: Тверь Пользователь №: 24927 |
Кластерный анализ последовательностей Sequence Clustering широко применяется в биоинформатике (и в бизнес-аналитике).
Существует скрипт R http://www.r-bloggers.com/a-sequence-clustering-model-in-r/ |
|
17.03.2015 - 20:55
Сообщение
#11
|
|
Группа: Пользователи Сообщений: 1091 Регистрация: 26.08.2010 Пользователь №: 22699 |
Кластерный анализ последовательностей Sequence Clustering широко применяется в биоинформатике (и в бизнес-аналитике). Существует скрипт R http://www.r-bloggers.com/a-sequence-clustering-model-in-r/ Какое отношение имеет последовательность в которой возможны перестановки к данным топикстартера? |
|
17.03.2015 - 21:30
Сообщение
#12
|
|
Группа: Пользователи Сообщений: 219 Регистрация: 4.06.2013 Из: Тверь Пользователь №: 24927 |
Какое отношение имеет последовательность в которой возможны перестановки к данным топикстартера? Слово перестановка здесь не используется и я не использовал. Кластерный анализ последовательностей - это интегративный метод , сочетающий в себе анализ последовательностей и кластерный анализ. Читайте Д. Макленнен и др. SQL Server 2008 Data mining ИАД 2009. стр 373 и далее. Да , чтобы его использовать, эти данные нужно несколько преобразовать. В общем случае метод использует и цепи Маркова. Диаграмма кластеров в SQL будет похожа на диаграмму в Deductor со связями между кластерами. но и с вероятностями перехода (алгоритм Microsoft Sequence Cluctering). Считаю, что в этом случае данный метод наиболее применим из того, что известно мне. Остальные подходы ( в том числе и мои) можно считать наивными. Следующий по сложности метод в этом ряду - кластерный анализ временных рядов (здесь применять нельзя). В Россси , по моим сведениям, этими методами почти никто не занимается. Сообщение отредактировал anserovtv - 17.03.2015 - 21:56 |
|
17.03.2015 - 21:47
Сообщение
#13
|
|
Группа: Пользователи Сообщений: 1091 Регистрация: 26.08.2010 Пользователь №: 22699 |
Здесь нет никакой последовательности (а есть два значения, назвать это последовательностью как то слишком круто, это просто а и b), а указанный вами линк на R пакет ведет именно на модель данных с перестановками, которая применяется в случае множественного ранжирования (типа анализа данных выдачи поисковиков и последовательностей у биоинформатиков).
|
|
18.03.2015 - 07:08
Сообщение
#14
|
|
Группа: Пользователи Сообщений: 219 Регистрация: 4.06.2013 Из: Тверь Пользователь №: 24927 |
Определение последовательности на стр. 374.
В математике последовательность может состоять из двух чисел, здесь аналогично: начальное состояние - конечное состояние. Судя по описанию алгоритма в этой книге, метод применим и в этом случае. / Цепи Маркова - первого порядка . Рисунок на стр.391./ В алгоритме применяется EM-кластеризация. Сообщение отредактировал anserovtv - 18.03.2015 - 09:54 |
|
18.03.2015 - 12:42
Сообщение
#15
|
|
Группа: Пользователи Сообщений: 1091 Регистрация: 26.08.2010 Пользователь №: 22699 |
Определение последовательности на стр. 374. В математике последовательность может состоять из двух чисел, здесь аналогично: начальное состояние - конечное состояние. Судя по описанию алгоритма в этой книге, метод применим и в этом случае. / Цепи Маркова - первого порядка . Рисунок на стр.391./ В алгоритме применяется EM-кластеризация. ну тогда это подходит и под определение временной серии которую почему то "нельзя использовать" цепь Маркова в данном случае это простая регрессия, частный случай которой (без интерцепта) я и предложил для преобразования данных |
|