Использование нескольких родительских идентификаторов для времени отсечки в глубоком синтезе функций

Мои данные выглядят так: Люди ‹-- События ‹--Активность. Родителем является People, единственной переменной которого является person_id. События и действия имеют временной индекс, наряду с event_id и activity_id, оба из которых имеют несколько функций.

Члены сущности «Люди» посещают места в разное время. Я пытаюсь создать глубокие функции для людей. Если люди — это что-то вроде [1,2,3], как мне передать время отсечения, которое создает глубокие функции для чего-то вроде (Person,cutofftime): [1,январь2], [1,январь3]

Если у меня только 3 человека, кажется, что я не могу передать кадр данных cutoff_time, который имеет 10 строк (например, человек 1 с 10 возможными значениями времени отсечки). Попытка сделать это дает мне ошибку «Дублированные строки в кадре данных времени отсечки», несмотря на удаление дубликатов из моего кадра данных cutoff_times.

Должен ли я включать индекс времени в объект People? Это оставило бы мой родительский объект с несколькими людьми в индексе, хотя у них был бы другой индекс времени. Мой инстинкт заключается в том, что сущность людей не должна включать столбец даты и времени. Я хотел бы указать время отключения функции DFS.

Мой файл cutoff_times df.head выглядит так и содержит несколько экземпляров некоторых people_id:

+-------------------------------------------+
|         person_id       time        label |
+-------------------------------------------+
| 0      f_GZSVLYU 2019-12-06           0.0 |
| 1      f_ATBJEQS 2019-12-06           1.0 |
| 2      f_GLFYVAY 2019-12-06           0.5 |
| 3      f_DIHPTPA 2019-12-06           0.5 |
| 4      f_GZSVLYU 2019-12-02           1.0 |
+-------------------------------------------+

Сущность «Родительский народ» выглядит следующим образом:

+-------------------+
|       person_id   |
+-------------------+
| 0      f_GZSVLYU  |
| 1      f_ATBJEQS  |
| 2      f_GLFYVAY  |
| 3      f_DIHPTPA  |
| 4      f_DVOYHRQ  |
+-------------------+

Как я могу заставить featuretools понять, что я пытаюсь сделать?

«Повторяющиеся строки в кадре данных времени отсечки». Я изучил свой cutoff_times df, и повторяющихся строк нет. Person_id, время и метки имеют несколько вхождений, но нет двух одинаковых строк. Могут ли эти дубликаты, на которые ссылается ошибка, быть где-то еще в EntitySet?


person Gabe    schedule 05.01.2020    source источник


Ответы (1)


Ответ: одна строка cutoff_df имеет тот же идентификатор и время, но с разными метками. Это проблема.

person Gabe    schedule 05.01.2020
comment
Это правильно. В предельное время идентификатор и время не могут иметь повторяющихся строк. У человека может быть такое же предельное время, как и у другого человека, но предельное время для отдельного человека должно быть уникальным. Я бы посоветовал изучить Compose, который идеально подходит для автоматического определения времени отсечки на основе того, как вы определяете проблема предсказания. - person Jeff Hernandez; 06.01.2020