Я после описания / методологии для проведения анализа географически взвешенных основных компонентов (GWPCA). Я счастлив использовать Python для любой части этого, и я представляю, что SPSS или R используются для запуска PCA с географически взвешенными переменными.
Мой набор данных состоит из примерно 30 независимых переменных, которые измеряются по ~ 550 участкам переписи (векторная геометрия).
Я знаю, что это загруженный вопрос. Но, как я ищу, так и не вижу никаких решений. Я столкнулся с математическими уравнениями, которые объясняют фундаментальный состав GWPCA (и GWR). То, что мне нужно, в большей степени применимо в том смысле, что я ищу, какие основные шаги мне нужно выполнить, чтобы перейти от необработанных данных к результатам GWPCA.
Я хотел бы расширить первую часть этого редактирования из-за комментариев, полученных ниже.
Чтобы обратиться к Павлу ...
Я основываю свой интерес к GWPCA из следующей статьи:
Ллойд, CD, (2010). Анализ характеристик населения с использованием географически взвешенного анализа основных компонентов: тематическое исследование Северной Ирландии в 2001 году. Компьютеры, окружающая среда и городские системы, 34 (5), с.389-399.
Для тех, кто не имеет доступа к литературе, я приложил скриншоты отдельных разделов, которые объясняют математику ниже:
И по адресу ...
Не вдаваясь в детали (конфиденциальность), мы пытаемся свести 30 переменных, которые, по нашему мнению, являются очень хорошими показателями (хотя и глобально), к набору компонентов с собственными значениями, превышающими 1. Путем вычисления географически взвешенных компонентов мы пытаемся чтобы понять местные различия, объясняемые этими компонентами.
Я думаю, что наша основная цель будет состоять в том, чтобы доказать концепцию GWPCA, то есть показать пространственно явный характер наших данных и что мы не можем считать все независимые переменные пояснительными в глобальном масштабе. Скорее, локальный масштаб (окрестности), который будет идентифицировать каждый компонент, поможет нам понять многомерный характер наших данных (как переменные могут быть объединены друг с другом, чтобы объяснить определенные окрестности в нашей области исследования).
Мы надеемся отобразить процент дисперсии, учитываемый каждым компонентом (отдельно), чтобы понять степень соседства, объясняемого рассматриваемым компонентом (помочь нам в понимании локальной пространственности наших компонентов). Возможно, некоторые другие примеры картирования, но ни один из них не приходит на ум в данный момент.
Дополнительно:
Математика, лежащая в основе GWPCA, выходит за рамки того, что я понимаю, учитывая мои знания в области географического анализа и социальной статистики. Применение математики является наиболее важным, то есть то, что я подключить к этим переменным / формулам.
источник
Ответы:
«Географически взвешенный PCA» очень нагляден:
R
программа практически сама себя пишет. (Требуется больше строк комментариев, чем реальных строк кода.)Начнем с весов, потому что именно здесь географически взвешенная компания PCA разделяет саму PCA. Термин «географический» означает, что веса зависят от расстояний между базовой точкой и местоположениями данных. Стандарт - но не только - взвешивание - это гауссовская функция; то есть экспоненциальный спад с квадратом расстояния. Пользователь должен указать скорость затухания или - более интуитивно - характерное расстояние, на котором происходит фиксированное количество затухания.
PCA применяется либо к ковариационной, либо к корреляционной матрице (которая выводится из ковариации). Здесь, затем, функция для вычисления взвешенных ковариаций численно устойчивым способом.
Корреляция получается обычным способом, используя стандартные отклонения для единиц измерения каждой переменной:
Теперь мы можем сделать СПС:
(На данный момент это всего 10 строк исполняемого кода. Ниже потребуется еще одна, после того, как мы опишем сетку, по которой будет выполняться анализ.)
Давайте проиллюстрируем некоторые случайные данные выборки, сопоставимые с описанными в вопросе: 30 переменных в 550 местах.
Географически взвешенные вычисления часто выполняются в выбранном наборе мест, например, вдоль разреза или в точках регулярной сетки. Давайте использовать грубую сетку, чтобы получить представление о результатах; позже - когда мы уверены, что все работает и мы получаем то, что хотим, - мы можем улучшить сетку.
Возникает вопрос, какую информацию мы хотим сохранить от каждого СПС. Как правило, PCA для n переменных возвращает отсортированный список из n собственных значений и - в различных формах - соответствующий список из n векторов, каждый из которых имеет длину n . Это n * (n + 1) номеров на карте! Если взять некоторые подсказки из этого вопроса, давайте сопоставим собственные значения. Они извлекается из выходного сигнала
gw.pca
через$sdev
атрибут, который является списком собственных значений по убыванию значения.Это завершается менее чем за 5 секунд на этой машине. Обратите внимание, что характерное расстояние (или «полоса пропускания»), равное 1, было использовано при вызове
gw.pca
.Остальное дело зачистки. Давайте сопоставим результаты, используя
raster
библиотеку. (Вместо этого можно записать результаты в формате сетки для последующей обработки с помощью ГИС.)Это первые четыре из 30 карт, показывающие четыре самых больших собственных значения. (Не будьте слишком взволнованы их размерами, которые превышают 1 в каждом месте. Напомним, что эти данные были сгенерированы совершенно случайным образом и, следовательно, если они вообще имеют какую-либо структуру корреляции - что, по-видимому, указывают на большие собственные значения в этих картах - это исключительно случайно и не отражает ничего «реального», объясняющего процесс генерации данных.)
Поучительно изменить пропускную способность. Если он слишком маленький, программное обеспечение будет жаловаться на особенности. (Я не включал проверку ошибок в этой простой реализации.) Но уменьшение ее с 1 до 1/4 (и использование тех же данных, что и раньше) действительно дает интересные результаты:
Обратите внимание на тенденцию для точек вокруг границы давать необычно большие главные собственные значения (показанные в зеленых местах на верхней левой карте), в то время как все другие собственные значения подавлены, чтобы компенсировать (показанный светло-розовым на других трех картах) , Это явление и многие другие тонкости PCA и географического взвешивания необходимо будет понять, прежде чем можно будет надежно интерпретировать географически взвешенную версию PCA. И затем есть другие 30 * 30 = 900 собственных векторов (или «нагрузок»), которые необходимо учитывать ...
источник
nrow=n.cols
, но именно так оно и было (на основе того, как оноpoints
было создано), и я не хотел возвращаться и переименовывать все.Обновить:
В настоящее время в CRAN доступен специальный пакет R - GWmodel, который включает в себя географически взвешенный PCA и другие инструменты. С сайта автора :
Больше подробностей в превью предстоящей статьи .
Я сомневаюсь, что существует решение «готово к использованию, подключи свои данные». Но я очень надеюсь, что окажется неправым, так как хотел бы проверить этот метод на некоторых моих данных.Некоторые варианты для рассмотрения:
Мари-Делл'Ольмо и его коллеги использовали байесовский факторный анализ для расчета индекса депривации для небольших территорий в Испании:
В этой статье они предоставляют спецификацию для модели WinBUGS, выполненной из R, которая может помочь вам начать работу.
Пакет adegenet R реализует
spca
функцию. Хотя он сфокусирован на генетических данных, он может быть как можно ближе к решению вашей проблемы. Либо используя этот пакет / функцию напрямую, либо изменив его код. Существует виньетка на проблемекоторая должна получить вас и работает.Исследователи из Кластера стратегических исследований, похоже, активно работают над этой темой. Особенно Пол Харрис и Крис Брансдон (здесь я наткнулся на презентацию ). Недавняя публикация Пола и Урски ( полный текст ) также может быть полезным ресурсом:
Почему бы вам не попробовать связаться с ними и спросить, какие именно решения они используют? Они могут быть готовы поделиться своей работой или указать вам правильное направление.
в статье упоминается использование ГИС системы GeoDAS . Может быть, еще один повод.
источник
spca
виньетке.) Это мощное и законное использование GWPCA. (Однако этот метод мог бы быть значительно улучшен и в большей степени соответствовать духу исследовательского анализа пространственных данных, если бы PCA был заменен более надежной процедурой.)GWmodel
похоже на пакет, который стоит приобрести.