Я пытаюсь использовать Python pandas, чтобы взять несколько строк, которые имеют значения defect_*_day_flag
как ИСТИНА и ЛОЖЬ, и создать новый кадр данных, сжатый. Использование phase_date из первого вхождения TRUE для создания нового столбца *_dttm
для каждого из соответствующих столбцов defect_*_day_flag
.
Исходные данные представляют ежедневный снимок (phase_date) для состояния данного bug_id
. Данные выглядят примерно так:
phase_date bug_id creation_dttm severity status defect_regression_day_flag defect_reopen_day_flag defect_backlog_day_flag defect_resolution_day_flag defect_rejected_day_flag defect_verified_day_flag defect_failedtest_day_flag
2019-01-09 113998 2004-01-21 3:15:24 medium NEW FALSE FALSE TRUE FALSE FALSE FALSE FALSE
2019-01-10 113998 2004-01-21 3:15:24 medium NEW FALSE FALSE TRUE FALSE FALSE FALSE FALSE
2019-01-11 113998 2004-01-21 3:15:24 medium ASSIGNED FALSE FALSE TRUE FALSE FALSE FALSE FALSE
2019-01-12 113998 2004-01-21 3:15:24 medium IN PROGRESS FALSE FALSE TRUE FALSE FALSE FALSE FALSE
2019-01-13 113998 2004-01-21 3:15:24 medium IN PROGRESS FALSE FALSE TRUE FALSE FALSE FALSE FALSE
2019-01-14 113998 2004-01-21 3:15:24 medium VERIFIED FALSE FALSE FALSE FALSE FALSE TRUE FALSE
2019-01-15 113998 2004-01-21 3:15:24 medium CLOSED FALSE FALSE TRUE TRUE FALSE FALSE FALSE
И я пытаюсь добраться до:
bug_id creation_dttm severity status regression_dttm reopen_dttm backlog_dttm resolution_dttm rejected_dttm verified_dttm failed_test_dttm
113998 2004-01-21 3:15:24 medium CLOSED NULL NULL 2019-01-09 2019-01-15 NULL 2019-01-14 NULL
Обратите внимание, что в приведенном выше примере используется one speci c bug_id
; однако в реальном наборе данных будут тысячи различных идентификаторов ошибок.
Новый кадр данных должен содержать самую последнюю строку для каждой ошибки вместе с несколькими важными столбцами из самой последней строки bug_id
, т.е. серьезность, статус, creation_dttm, et c вместе с новыми *_dttm
столбцами.