Вопрос или проблема
У меня есть большой набор данных, содержащий информацию о людях и адресах, по которым они проживают. Я хочу создать идентификатор домохозяйства на основе общих адресов (рабочая идея: люди, которые проживают по одному и тому же адресу, могут считаться частью одной семьи/домохозяйства). Исходя из этого идентификатора домохозяйства, мой научный руководитель хочет исследовать миграцию домохозяйств/семей с течением времени в связи с изменениями стоимости жизни.
Однако сложность заключается в том, что набор данных/анализ является длинномерным. У нас есть набор данных, охватывающий несколько последовательных периодов времени. Мы хотим прикрепить идентификатор домохозяйства к каждому человеку, с которым он может быть связан в любой момент времени в данных. Это вызывает несколько проблем.
- Люди переезжают в/из домохозяйств.
- Люди создают свои собственные домохозяйства с другими людьми.
- Набор данных не отслеживает людей младше 18 лет, поэтому, когда они достигают совершеннолетия, они появляются в периоде данных, в котором им исполняется 18 лет.
- и т.д.
Научный руководитель гибок в своем определении домохозяйств, и на данный момент мы придумали несколько идей.
-
Якорные домохозяйства: создание идентификаторов домохозяйств с привязанными адресами в начале исследования и привязка этих людей к этому начальному идентификатору. Проблема: индивидуумы выходят/расщепляются из своих домохозяйств, что приводит к…
-
Капитан/ГлаваДомохозяйства: отслеживание одного человека в домохозяйстве в начале данных и группировка людей, приходящих в их домохозяйство, на основе присвоенного идентификатора капитана. Проблема: сложно сделать различие, кто получает назначение капитана.
-
Несколько идентификаторов: присвоение идентификаторов на каждом периоде данных, а затем создание графа для ассоциации. Лучшая идея на данный момент, но может сделать анализ немного более сложным.
-
Сетевые связи: использование компонентных соединений для подключения каждого человека через временные периоды. Слабые связи исключены (1-2 ассоциации и менее). Например, я бы был связан с каждым соседом по комнате, которого имел мой сосед по комнате. Проблема: очень запутанно (хотя может быть весело попробовать реализовать).
Итак, я ищу ресурсы или предложения о том, как решить проблему группировки по временным данным. На данный момент я изучил связанные компоненты, ассоциативные группы и теорию графов. Пожалуйста, если у вас есть какие-либо предложения, я был бы очень признателен. Я использую Python, так что любые советы по библиотекам также будут полезны.
Пожалуйста, дайте знать, если мне нужно дополнительно разъяснить что-то, или если есть какая-либо другая информация, которая будет полезна.
Одним из вариантов является использование промежуточной структуры данных (IDS), которая является общим форматом данных для длинномерных баз данных по историческим популяциям.
Ответ или решение
Создание групповых идентификаторов для людей в продольных данных представляет собой сложную задачу, учитывающую динамические изменения в составе домохозяйств и перемещение людей. В этом ответе мы детально рассмотрим подходы и стратегии, которые могут помочь вам успешно реализовать эту задачу, опираясь на ваши потребности и данные.
Понимание проблемы
Ваши данные охватывают несколько временных периодов, что усложняет задачу создания уникальных идентификаторов для домохозяйств. Основные проблемы заключаются в том, что:
- Люди перемещаются в/из домохозяйств.
- Люди создают свои собственные домохозяйства.
- Регистрация людей, не достигших 18 лет, происходит только в момент их достижения возраста совершеннолетия.
Существует множество подходов к решению этой задачи, и рациональный выбор может сильно зависеть от конкретных обстоятельств вашего исследования.
Подходы к созданию групповых идентификаторов
-
Якорные домохозяйства
- В этом методе вы создаете домохозяйственные идентификаторы на основе адресов, собранных в начале исследования.
- Преимущества: Простота и возможность отслеживания исходного состава домохозяйств.
- Недостатки: Невозможность адекватно отразить изменения в составе домохозяйств, что приведет к путанице с идентификацией.
-
Капитан/Глава домохозяйства
- При этом подходе один человек из домохозяйства становится "капитаном", и к нему присоединяются другие люди, живущие с ним.
- Преимущества: Четкая связь между членами домохозяйства.
- Недостатки: Сложность выбора капитана, особенно если его статус меняется временно.
-
Множественные идентификаторы
- Каждому времённому отрезку можно присвоить уникальный идентификатор. Это потребует построения структуры для отслеживания изменений.
- Преимущества: Учет всех изменений в составах домохозяйств.
- Недостатки: Сложности при анализе данных из-за большого количества идентификаторов.
-
Связывание (Webbing)
- Использование графовой структуры для связывания людей через общий адрес и временные взаимодействия.
- Преимущества: Предоставляет полное представление о связях и историческом контексте.
- Недостатки: Может стать слишком сложным для управления и анализа.
Одна из рекомендаций: Использование структуры промежуточных данных (IDS)
Структура промежуточных данных (IDS) является распространенной формой данных для продольных баз данных. Она позволяет более эффективно организовать данные, отслеживая индивидуальные перемещения и другие характеристики зафиксированных периодов.
Реализация в Python
Для реализации связных компонентов и организованного подхода к созданию групповых идентификаторов, можно использовать такие библиотеки, как:
- Pandas для преобразования и манипуляции данными.
- NetworkX для работы с графами, что позволяет визуализировать связи между участниками.
- Shotgun (или возможность использования собственного алгоритма объединения) для обработки и выполнения соединительных процессов.
Заключение
Создание групповых идентификаторов для людей в продольных данных — это сложная задача, требующая учета изменений во времени и пространства. В зависимости от ваших нужд и ожидаемой гибкости в анализе данных, вы можете выбрать один из вышеуказанных методов. IDS может служить вашим ориентиром при организации данных. Для более детального анализа и реализации, рекомендую вам экспериментировать с графовыми структурами и ассоциативными группами, что позволит выявить более глубокие связи и динамику миграции домохозяйств.
Если у вас будут дополнительные вопросы или понадобится помощь, не стесняйтесь обращаться.