Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум врачей-аспирантов _ Медицинская статистика _ Кластерный анализ переменных, с указанием групп

Автор: nastushka 22.02.2018 - 15:04

Подскажите, как можно решить такую задачу
1. есть данные, в них 20 переменных
2. нужно кластеризовать эти 20 переменных, т.е. выделить классы схожим переменных
3.затем найти людей, которые "кучкуются" у каждого класса переменных.
Например мы нашли 4 класса переменных абв, где, ежз, икл. наблюдения 1-30 кучкуются у класса к примеру ежз.

Автор: passant 22.02.2018 - 15:33

Цитата(nastushka @ 22.02.2018 - 14:04) *
Подскажите, как можно решить такую задачу
1. есть данные, в них 20 переменных
2. нужно кластеризовать эти 20 переменных, т.е. выделить классы схожим переменных
3.затем найти людей, которые "кучкуются" у каждого класса переменных.
Например мы нашли 4 класса переменных абв, где, ежз, икл. наблюдения 1-30 кучкуются у класса к примеру ежз.

Что-то у вас все в кучу, мухи, котлеты, переменные, наблюдения, кластеры, классы, "кучки".... sorry.gif
Во-первых. Что такое "классы схожих переменных"? Вы имеете ввиду, что некоторые переменные у вас зависимые (коррелированны) между собой? И вы хотите из группы сильно коррелированных переменных оставить только одну? В любом случае, "классами" эти переменные я бы называть поостергся, а уж тем более их "кластеризовать"
Во-вторых. Что значит "кучкуются у каждого класса переменных"??? unknw.gif Тут у меня даже фантазии не хватает понять, что вы имеете ввиду.
В любом случае, рекомендую сначала прочитать хотя-бы краткое введение в кластерный анализ. Может - поймете сами чего нужно, но по крайней мере - сумеете хоть внятно объяснить свою задачу в общеупотребимых терминах
Или второе возможное действие - описать вашу прикладную задачу, и дать возможность специалистам самим разобраться кого и куда "кластеризовать" smile.gif

Автор: leo_biostat 22.02.2018 - 16:50

nastushka, hi.gif!

Весьма неясные Ваши вопросы.
Во-первых, неясно, что Вы пытаетесь кластеризовать: сами переменные, или же наблюдения? Или же и признаки, и наблюдения?
Во-вторых, неясно и то, какие у Вас признаки (количественные, дискретные (качественные), или и те, и другие?.
В третьих, если это количественные признаки, то какие у них масштабы и распределения?
В четвёртых, неясно, зачем и почему Вы желаете это сделать. Т.е. с какой целью пытаетесь получить этот результат?

Вновь напомню высказанное ранее своё предложение: если исследователь действительно желает получить продуктивную помощь от профессионалов,
то пишите свой ник по Скайпу. И тогда профи, желающий Вам помочь, проведёт собеседование с Вами по Скайпу, и поможет в решении этих вопросов.

Желаю успеха в исследовании!

Автор: 100$ 22.02.2018 - 17:52

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

Если же хочется понять, как переменными нагружены главные компоненты...

В-общем, настюшка наша молодцом: знает, как разговор начать.

 Doc1.rar ( 41,4 килобайт ) : 242
 

Автор: nokh 22.02.2018 - 23:07

Цитата(nastushka @ 22.02.2018 - 17:04) *
1. есть данные, в них 20 переменных
2. нужно кластеризовать эти 20 переменных, т.е. выделить классы схожим переменных
3.затем найти людей, которые "кучкуются" у каждого класса переменных.

Задачу лучше решать ординационными (проекционными), а не кластерными техниками. Повторяю это из поста в пост, т.к. в учебниках проблема прописана плохо. Ваши 20 переменных могут образовать, скажем 3 паттерна, за каждым из которых стоит отдельный процесс, причём 15 переменных изменяются согласованно, т.к. обусловлены одним процессом, 4 - другим процессом, 1 переменная отражает третий процесс. Если пытаться кластеризовать 20 переменных, то ведущий процесс подавит при кластеризации более слабые. Или неудачный выбор переменных выведет на первое место второстепенный процесс. Психологи это знают и при разработке тестов (тестология) стараются нагрузить разные предварительно выявленные процессы примерно равным числом показателей. Иначе вы будете думать, что провели кластеризацию по всем 20 переменным, тогда как на дендрограмме будет отражено сходство только по 15. Кластерный анализ - хорошая эксплораторная техника, но её лучше проводить не на исходных данных, а на метках (scores) латентных обобщающих переменных, выделенных с помощью ординационных техник типа главных компонент, главных координат, факторного анализа. А ординационные техники позволят выйти на число таких кластерообразующих процессов. В ходе их применения возможно построение двойных графиков (biplot) - биплотов, которые в пространстве выбранных осей отобразят векторами сами переменные, а точками - объекты. Таким образом из анализа полученной ординационной дендрограммы становится понятным: (1) какие переменные и с каким знаком "участвуют" в латентной переменной, (2) какие объекты имеют большие значения по этим переменным и, собственно, обусловливают формирование наблюдаемых патттернов показателей. Часто точки объектов образуют на таких графиках скопления, т.е. собственно кластеры. В зависимости от объёмов выборок номера таких объектов можно либо просто выписать вручную, а можно применить к рассчитанным для кажого объекта значениям обобщающих шкал (меткам) кластеризацию методом к-средних, введя в качестве числа кластеров то число, которое подсказали ординационные диаграммы.

Автор: nastushka 23.02.2018 - 14:27

Добрый день.
Есть 20 переменных(прислала датасет с фиктивными, а то настоящие данные нельзя давать)
группировать переменные можно или кластерным анализом или факторным
допустим , если мы стали использовать факторный анализ, мы выделил 4 фактора, каждый нагружен тремя переменными.
Вопрос то был понять, как наблюдения кучкуются у каждого фактора
Я думала выделит факторы, превратить их в регрессионные переменные и по ним сделать кластерный анализ.
Я так полагаю nokh это имели ввиду?

 фикт.xlsx ( 14,09 килобайт ) : 233
 

Автор: 100$ 23.02.2018 - 18:30

Цитата(nastushka @ 23.02.2018 - 14:27) *
Есть 20 переменных, группировать переменные можно кластерным анализом


Можно. Раскочегариваем ф-цию pvclust() из library(pvclust), скармливаем ей датасет, на выходе получаем дендрограмму (см.рис) с оценками AU/BP,
видим два кластера признаков, даем им осмысленную интерпретацию, после чего кластеризуем наблюдения для выделенных подмножеств признаков.
Действительно, все просто.



 Dendr.bmp ( 441,4 килобайт ) : 770
 

Автор: p2004r 23.02.2018 - 21:18


Сейчас есть техники кластеризации когда результат появляется как ансамбль множества кластеризаций library(clue).

Автор: leo_biostat 24.02.2018 - 09:07

Цитата(nastushka @ 23.02.2018 - 14:27) *
Прикрепленный файл фикт.xlsx ( 14,09 килобайт )


nastushka, hi.gif!

Ваш " Прикрепленный файл фикт.xlsx ( 14,09 килобайт ) "- это реальная, действительная БД?
Или не реальная? Рекомендую в подобных ситуациях приводить действительно реальную БД.
Но при этом можете не уточнять названий признаков.

Успеха в исследовании!

Автор: 100$ 24.02.2018 - 13:07

Цитата(leo_biostat @ 24.02.2018 - 09:07) *
nastushka, hi.gif!

Ваш " Прикрепленный файл фикт.xlsx ( 14,09 килобайт ) "- это реальная, действительная БД?
Или не реальная? Рекомендую в подобных ситуациях приводить действительно реальную БД.
Но при этом можете не уточнять названий признаков.

Успеха в исследовании!


/ворчливо/

Реальная, реальная. Прямо кусок из жизни. Из серии "Только для вас". А что состоит из случайных чисел - так чего только в жизни ни бывает...

Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)