SophiaReed & KinshipCode
SophiaReed SophiaReed
Ты когда-нибудь задумывалась, как генеалогическое древо может соотноситься с филогенетической диаграммой? Ведь каждая ветвь может отображать и социальные связи, и генетическую информацию. Было бы интересно сравнить структуры данных, которые мы используем.
KinshipCode KinshipCode
О, конечно! Я уже несколько месяцев рисую их рядом, бок о бок. Генеалогия – это всё о родственных связях, об этих самых «я твой кузен, потому что у нас общий предок» связях, а филогенетическая схема – это карта ДНК, каждая ветвь – линия мутации. Если их наложить друг на друга, то запреты на браки между кузенами всплывают как скрытые узлы – это точки "социальной обрезки". На салфетке я уже набросала небольшую социограмму, показывающую, какие пары кузенов запрещены в матрилинейном клане. Интересно то, как генетическое расстояние часто отражает социальное, но не всегда – некоторые культуры допускают браки между близкими кузенами, даже если генетика говорит об обратном. Это как зашифрованная головоломка, где ответ меняется в зависимости от того, на каком языке ты её решаешь. У тебя есть какой-нибудь конкретный клан или набор данных, который ты хотела бы сравнить?
SophiaReed SophiaReed
Звучит как очень интересный проект! Вы изучаете конкретную этническую группу, или более обширный набор данных с разными родами? Я могла бы помочь с выравниванием матриц родства и генетических расстояний, и проверить корреляции.
KinshipCode KinshipCode
Я на самом деле собираю данные из нескольких кланов островов Тихого океана – Тробриан, Бванабвана и ещё несколько меланезийских групп, так что у нас довольно обширный массив данных. Сначала для каждого клана составляем отдельную социограмму. Я сопоставлю матрицу родства с митохондриальными гаплогруппами и посмотрю, совпадают ли запреты на браки между двоюродными братьями и генетические расстояния. Если ты сможешь помочь мне выровнять эти матрицы, мы наконец-то найдём тот недостающий кусочек пазла, который покажет, были ли социальные ограничения продиктованы генетикой или культурой. Готова погрузиться?
SophiaReed SophiaReed
Давай сначала нормализуем матрицы родства, чтобы в ячейках было указано количество общих предков, а потом посчитаем генетическое расстояние по частотам митохондриальных гаплогрупп. Сложим эти две матрицы в одну таблицу и проверим с помощью теста Мантеля, подтверждается ли корреляция. Могу написать скрипт на R или Python – скажи, какой тебе больше подходит. Как только у нас будут парные расстояния, наложим связи-табу на граф и посмотрим, не выбиваются ли они из общего тренда. Готова кодить?
KinshipCode KinshipCode
Звучит отлично! Мне удобнее работать с Python для обработки данных, но пакет vegan в R тоже вполне справляется с Мантеля-тестом. Давай выберем Python: pandas для матрицы родства, scipy для вычисления парных расстояний, scikit-bio для Мантель-теста и networkx для визуализации запретных связей на графе. Как только у нас будут парные расстояния, мы сможем выделить запретные связи красным и посмотрим, окажутся ли они выбросами. Скажи, если тебе нужно, чтобы я что-нибудь подкорректировала или набросала схему социограммы, пока будем кодить. Готова начинать?
SophiaReed SophiaReed
Звучит здорово—просто дай знать, когда матрицы будут готовы, и я приступлю к написанию скрипта для вычисления генетических расстояний, проведу тест Мантеля и построю сетевой граф с выделенными запретными связями. Будем уточнять предположения по ходу работы. Готова, когда ты.